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 :

Syntaxe d'une Fonction


Sujet :

JavaScript

  1. #1
    Membre habitu�
    Profil pro
    Inscrit en
    F�vrier 2011
    Messages
    8
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2011
    Messages : 8
    Par d�faut Syntaxe d'une Fonction
    Bonjour,
    Je voudrais �crire ce genre de fonction :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <script language="javascript" type="text/javascript">
    function X()
       {
     var  etat=document.getElementById('id dans balise div ').style.display;
       if(etat=="block"){
       function Y () return false;
       }
       else{
       function Y () return true;   }
       }
    </script>
    Est-il possible d'appeler une function dans une autre function ?
    Si oui, quelqu'un pourrait-il me donner la bonne syntaxe ?
    Merci d'avance
    Jojolito

  2. #2
    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
    bonjour,

    Citation Envoy� par jojolito Voir le message
    Est-il possible d'appeler une function dans une autre function ?
    Si oui, quelqu'un pourrait-il me donner la bonne syntaxe ?
    oui tout � fait :
    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
     
    // déclaration de Y()
    function Y()
    {
         // code de la fonction...
     
    }
     
    // déclaration de X()
    function X()
    {
          // code de la fonction...
     
         Y();        // appel de Y
    }

    Une remarque en passant :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    document.getElementById('id dans balise div ').style.display
    ne retournera rien si la propri�t� a �t� d�clar�e en CSS.

    Si tu as modifi� la valeur de cette propri�t� dans un script javascript alors dans ce cas (et uniquement dans ce cas) style.display retournera la valeur affect�e.

  3. #3
    Membre habitu�
    Profil pro
    Inscrit en
    F�vrier 2011
    Messages
    8
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2011
    Messages : 8
    Par d�faut Syntaxe d'une fonction
    Merci pour votre r�ponse mais je fais fausse route. Ce n'est pas la m�thode qui me permettra de venir � bout du dysfonctionnement que je constate.
    En fait voil� sur quoi je butte :
    J'ai un menu d�roulant dont l'une des sous-listes d'une des listes ouvre une pop up et m'assombrit la div de background. Cela se fait bien. Ce qui n'est pas bon c'est qu'une fois la pop up ouverte le fait de passer la souris sur la zone assombrie d�clenche le menu d�roulant au niveau de la liste concern�e par la pop up. Cela me semble normal puisque la div assombrie et la div de la pop up se trouvent entre les balises <li> et </li> de la sous-liste. J'essaie de neutraliser cet effet depuis plusieurs jours et je n'y arrive pas.
    J'ai essay� de cacher le block des sous-listes du menu sous toutes les div de ma page lorsque la pop up �tait ouverte en modifiant le z-index � l'aide d'une fonction jvs. Du bricolage !
    J'ai essay� de neutraliser la fonction qui d�roule le menu lorsque la fonction qui ouvre la pop up �tait activ�e. C'�tait la raison de ma question initiale. Ce n'est pas mieux.
    Je ne vois pas comment faire.
    Voici mes codes JS. Ce sont des codes classiques trouv�s dans diff�rents tutos et forums
    Du menu d�roulant :
    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
     
    <script language="javascript" type="text/javascript"> 
    function sfHover() {
            var sfEls = document.getElementById("menu").getElementsByTagName("li");
            for (var i=0; i<sfEls.length; i++) {
                    sfEls[i].onmouseover=function() {
                            this.className+=" sfhover";
                    }
                    sfEls[i].onmouseout=function() {
                            this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
                    }
            }
    }
    if (window.attachEvent) window.attachEvent("onload", sfHover);
    </script>
    De la pop up :
    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" type="text/javascript"> 
    function hideDiv() 
        { 
            if (document.getElementById) { // DOM3 = IE5, NS6 
                document.getElementById('hideshow').style.visibility = 'hidden'; 
            } 
            else { 
                if (document.layers) { // Netscape 4 
                    document.hideshow.visibility = 'hidden'; 
                } 
                else { // IE 4 
                    document.all.hideshow.style.visibility = 'hidden'; 
                } 
            } 
        }
     
        function showDiv() { 
            if (document.getElementById) { // DOM3 = IE5, NS6 
                document.getElementById('hideshow').style.visibility = 'visible'; 
            } 
            else { 
                if (document.layers) { // Netscape 4 
                    document.hideshow.visibility = 'visible'; 
                } 
                else { // IE 4 
                    document.all.hideshow.style.visibility = 'visible'; 
                } 
            } 
        }
    </script>
    La partie du code html de ma page concern� :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <ul>
    <li><a href="javascript:showDiv();" >BlaBla</a>								
    <div id="hideshow" style="visibility:hidden;">
    <div id="fade"></div>
    <div class="popup_block">
    		<div class="popup">
    </div>
    </div>
    </li>
    </ul>
    Id = fade est celle que j'assombris.
    Si vous avez une id�e ....
    Merci d'avance
    Jos�lito

  4. #4
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut
    pas s�r d'avoir tout bien compris, mais je me hasarderais � dire qu'il faut tester dans la fonction mouveover si la div est visible,
    - SI OUI on ne fait pas le changement de class
    - SI NON on fait le changement de class
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    sfEls[i].onmouseover=function() {
      if( La_div_est_NOT_Visible){
        this.className +=" sfhover";
      }
    }

  5. #5
    Membre habitu�
    Profil pro
    Inscrit en
    F�vrier 2011
    Messages
    8
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2011
    Messages : 8
    Par d�faut Syntax d'une fonction
    Merci pour votre aide mais en fait il suffisait de sortir la pop up des balises <li></li>. J'ai perdu beaucoup de temps l� dessus !
    Jos�lito

  6. #6
    Membre Expert
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Par d�faut
    Sinon tu peux neutraliser temporairement ta fonction tant que la pop-up est active :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    var yBackup = y;
    y = function(){};
    // Ton traitement, y ne peut plus rien faire.
    // ...
    // Fin de ton traitement, restauration de y :
    y = yBackup;

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

Discussions similaires

  1. probl�me de syntaxe pour une fonction
    Par gero123 dans le forum PostgreSQL
    R�ponses: 2
    Dernier message: 27/07/2007, 12h11
  2. erreur syntaxe sur une fonction pow
    Par superyoury dans le forum C
    R�ponses: 3
    Dernier message: 10/06/2007, 18h16
  3. Syntaxe d'une fonction
    Par Goupo dans le forum VB 6 et ant�rieur
    R�ponses: 2
    Dernier message: 01/06/2007, 18h18
  4. [SQLITE][UDF] syntaxe d'une fonction
    Par nannous dans le forum Biblioth�ques
    R�ponses: 3
    Dernier message: 31/10/2006, 13h56
  5. syntaxe d'une fonction
    Par john491 dans le forum G�n�ral Python
    R�ponses: 2
    Dernier message: 01/05/2006, 23h44

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