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

jQuery Discussion :

jquery apprentissage réalisation menu


Sujet :

jQuery

  1. #1
    Invité
    Invité(e)
    Par défaut jquery apprentissage réalisation menu
    Bonjour,

    Dans le but de comprendre à utiliser jquery, je m'essaie sur la gestion d'un menu

    code HTML:
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     
    	<link rel="stylesheet" type="text/css" media="screen" href="css/style_reset.css" />
    	<link rel="stylesheet" type="text/css" media="screen" href="css/style_1.css" />
    	<link rel="stylesheet" type="text/css" media="screen" href="css/menu.css" />
    	<script type="text/javascript" src="js/jquery-1.2.6.js"></script>
    	<script type="text/javascript" src="js/script.js"></script>
    	<title></title>
    </head>
    <body>
    <div class="site">
      <div class="haut"></div>
      <div class="gauche">
          <!-- accueil m1 -->
        <div>
          	<div class="menu" id="m1" >
          		<a id="m1a" href="#" >Accueil</a>
          	</div>
        </div>
          <!-- membres m2 -->
        <div>
          	<div class="menu" id="m2" >
          		<a id="m2a" href="#">Membres PIC</a>
          	</div>
        		<div class="sousmenu">
        			<a id="m21a" href="#">Inscrire</a>
        		</div>
        		<div class="sousmenu">
        			<a id="m22a" href="#">Modifier</a>
        		</div>
        		<div class="sousmenu">
        			<a id="m23a" href="#">Enlever</a>
        		</div>
        </div>
          <!-- sessions m3 -->
        <div>
          	<div class="menu" id="m3" >
          		<a id="m3a" href="#">Session</a>
          	</div>
        		<div class="sousmenu">
        			<a id="m31a" href="#" >Choisir</a>
        		</div>
        		<div class="sousmenu">
        			<a id="m32a" href="#" >Créer</a>
        		</div>
        		<div class="sousmenu">
        			<a id="m33a" href="#">Modifier</a>
        		</div>
        		<div class="sousmenu">
        			<a id="m34a" href="#">Enlever</a>
        		</div>
        </div>
          <!-- Sautant m4-->
        <div>
          	<div class="menu" id="m4" >
          		<a id="m4a" href="#">Sautant</a>
          	</div>
        		<div class="sousmenu">
        			<a id="m41a" href="#" >Ajouter</a>
        		</div>
        		<div class="sousmenu">
        			<a id="m42a" href="#">Enlever</a>
        		</div>
        </div>
          <!-- Suivi Activité m6-->
        <div>
          	<div class="menu" id="m6" >
          		<a id="m6a" href="#">Suvi Activité</a>
          	</div>
        </div>
          <!-- Caisse m5 -->
        <div>
          	<div class="menu" id="m5" >
          		<a id="m5a" href="#">Caisse</a>
          	</div>
        		<div class="sousmenu">
        			<a id="m51a" href="#" >Ajouter Paiement</a>
        		</div>
        		<div class="sousmenu">
        			<a id="m52a" href="#" >Ajouter Dépense</a>
        		</div>
            <div class="sousmenu">
        			<a id="m53a" href="#" >Bilan</a>
        		</div>
        </div>
      </div>
      <div class="droit"></div>
      <div class="bas"></div>
    </div>
    </body>
    </html>
    Avec ce code js, j'anime correctement les menus (au passage de la souris, je masque tous les sous-menus, et j'affiche les sous-menus du menu où se situe la souris).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $(document).ready(
        function() {
          $(".menu").hover(
            function(){$(".sousmenu").hide(); $(this).siblings().show()},
            function() {}
          )
        }
    );
    Maintenant, sur le click d'un sous-menu, je veux faire apparaitre une boite alert().
    Aussi, mon code js devient:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    $(document).ready(
        function() {
          $(".menu").hover(
            function(){$(".sousmenu").hide(); $(this).siblings().show()},
            function() {}
          )
        },
        function() (
          $(".sousmenu").click(
            function(){alert("coucou")}
          )
        )
    );
    Or, rien ne se produit, et pas de message dans la console de FF3.

    Je débute avec jquery.
    Auriez-vous des indications à me fournir sur mon soucis?
    Merci

    jlmag

    PS: pour les gestionnaires du forum Javascript, ne serais t-il pas le moment de créer des sous-forum sur les framworks js (prototype, mootool, jquery, dojo ...) comme ils en existent pour le forum PHP?

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bon, il se faisait tard hier, la vue qui fatigue, les {} qui ressemblent beaucoup aux ()....

    Maintenant cela fonctionne
    JS:
    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
    $(document).ready( function() {
          $(".menu").hover(
            function(){
              $(".sousmenu").hide();
              $(this).siblings().show()
            },
            function() {}
          );
          $(".sousmenu").click(
            function() {
              alert('coucou');
              return false;
            }
          );
    });
    Et voilà mon menu accordéon en quelques lignes via jquery

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 29/01/2013, 09h42
  2. Réalisation menu sous Matlab
    Par axol38 dans le forum MATLAB
    Réponses: 3
    Dernier message: 20/12/2011, 15h25
  3. JQuery cacher sous-menu
    Par dharkan dans le forum jQuery
    Réponses: 2
    Dernier message: 16/11/2011, 10h23
  4. Insérer du javascript/jquery dans un menu
    Par Little_flower dans le forum jQuery
    Réponses: 7
    Dernier message: 07/05/2008, 17h33
  5. Comment réaliser menu Tout développer
    Par dommm063 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 04/04/2008, 11h52

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