IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

variable globale en javascript


Sujet :

JavaScript

  1. #1
    Membre averti
    �tudiant
    Inscrit en
    Avril 2008
    Messages
    52
    D�tails du profil
    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 52
    Par d�faut variable globale en javascript
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    <script language="JavaScript">
    var c;
    function Over(img) {
     
    document.images["diapo"].src=img.src;
     c="1";
    }
     
    function Out(img) {
     document.images["diapo"].src="images/molucule.jpg"
    }
    function afficher(obj){
    var id = obj.id;
    var idsous="sous"+id;
    document.getElementById(idsous).style.display = "block";
     
    }
    function choix()
    {
    var text="";
     
    switch (c)
    {
    case '1':text="choix1";
    default:text="n'est pas evalue";
    } 
     
     
    return text;
    }
    </script>
    le pb c'est que la var C ne prend pas sa valeur "1"
    code htmlappelle des fonction)
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <img  src="images/girl.jpg" width="100" height="100" onMouseOver="Over(this)" >
    ....
    <div class="sousmenu" id="sousmenu" style="display:none"  >
    <SCRIPT LANGUAGE="JavaScript">
    document.write("<p>"+choix()+"</p>")
     
    </SCRIPT>
     
    </div>
    merci

  2. #2
    R�dacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Ao�t 2005
    Messages
    9 601
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 9 601
    Par d�faut
    Si, c prend la valeur "1" mais tu ne l'affiches pas de la bonne fa�on. Il ne faut pas oublier qu'une fois la page HTML charg�e, le code JavaScript est ex�cut� lin�airement. Dans ton cas :
    1. tu d�clares la variable c sans affecter de valeur
    2. Tu d�clares des fonctions dont une qui change la valeur de c, mais ces fonctions ne sont pas appel�es pour le moment
    3. Tu affiches une image pour laquelle tu dis que si on met la souris dessus, la fonction Over est appel�e
    4. Tu affiches un DIV
    5. Tu appelles la fonction choix() qui affiche la variable c : undefined car pour le moment, tu n'as jamais affect� de valeur � c
    6. Tu mets ta souris sur l'image : Over est appel�e et c prend la valeur "1", mais �a s'arr�te l� car l'affichage de c a d�j� �t� fait et tu ne demandes pas � le refaire.

    Faut donc que tu changes ta fa�on de faire.

  3. #3
    Membre averti
    �tudiant
    Inscrit en
    Avril 2008
    Messages
    52
    D�tails du profil
    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 52
    Par d�faut
    merci d'avoir repondu
    je vais essayer autre chose
    NOte:
    j'essaye de faire un diaporama:
    a chaque image on associe une texte
    mereci encore une fois

  4. #4
    Expert confirm�
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par d�faut
    il y a une erreur dans le switch :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    switch (c)
    {
    case '1':
        text="choix1";
        break;
    default:
        text="n'est pas evalue";
    }
    sans le break, le code continue son ex�cution. Donc dans un premier temps text prend bien la valeur "choix1", mais comme il n'y a pas d'instruction d'arr�t (break), text prend ensuite la valeur "n'est pas evalue".

  5. #5
    Membre averti
    �tudiant
    Inscrit en
    Avril 2008
    Messages
    52
    D�tails du profil
    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 52
    Par d�faut
    thank's Auteurmais ca pas marche.

  6. #6
    R�dacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Ao�t 2005
    Messages
    9 601
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 9 601
    Par d�faut
    Citation Envoy� par mysystm Voir le message
    je vais essayer autre chose
    Et quoi d'autre as-tu essay� ?

  7. #7
    Expert confirm�
    Avatar de le_chomeur
    Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2006
    Messages
    3 653
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : F�vrier 2006
    Messages : 3 653
    Par d�faut
    Citation Envoy� par mysystm Voir le message
    thank's Auteurmais ca pas marche.
    pas tr�s �loquent non plus comme r�ponse ^^ d'ou provient l'erreur ?

  8. #8
    Membre averti
    �tudiant
    Inscrit en
    Avril 2008
    Messages
    52
    D�tails du profil
    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Avril 2008
    Messages : 52
    Par d�faut
    enfin c'est resolu a l'aide de SpaceFrog

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    function afficher(obj){
    var id = obj.id;
    var idsous="sous"+id;
    document.getElementById("sousmenu").getElementsByTagName('p')[0].innerHTML=choix();
    document.getElementById(idsous).style.display = "block";
    
    }
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    <div  class="sousmenu" id="sousmenu" style="display:none"  >
    <p>  </p>
    </div>

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. D�claration des variables globales en javascript non recommand�e
    Par DarkPoster14 dans le forum G�n�ral JavaScript
    R�ponses: 5
    Dernier message: 15/01/2013, 12h31
  2. Cr�er une variable globale en javascript
    Par Med_Hamma dans le forum G�n�ral JavaScript
    R�ponses: 4
    Dernier message: 18/06/2012, 08h29
  3. Variables globales en javascript
    Par link_915 dans le forum G�n�ral JavaScript
    R�ponses: 25
    Dernier message: 07/07/2011, 09h15
  4. variable globale, en javascript.
    Par Anonymus dans le forum G�n�ral JavaScript
    R�ponses: 5
    Dernier message: 06/02/2007, 17h32
  5. [javascript] Probl�me variable globale !!!!
    Par LE NEINDRE dans le forum G�n�ral JavaScript
    R�ponses: 7
    Dernier message: 08/08/2005, 16h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo