|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() Développeur informatique Inscription : mars 2010 Messages : 139 ![]() |
bonjours,
J'ai un petit problème, je crée un menu accordéon en JQuery lorsque je clique sur un menu le sous-menu se déroule. si ensuite je clique sur un autre sous-menu celui-ci se déroule. Mais je voudrai que le précédent sous-menu se referme cependant l'effet escompté ne se réalise pas. Si je reclique sur le menu le sous-menu se referme et l'autre reste ouvert puis si je referme l'autre il se referme bien. Voici le code que j'ai : Code :
|
||
|
|
00
|
|
|
#2 | ||||||
|
Membre du Club
![]() Yohann Étudiant Inscription : novembre 2011 Messages : 28 ![]() |
Bonjour dharkan.
Le problème est un algorithme incorrect. Transformons ton code en pseudo-code : Code :
Code :
Une solution possible serait de toujours cacher les menus puis de n'afficher que celui cliqué : Code :
Tu pourrais rajouter un sinon qui fermerais tous les éléments ayant la classe 'cache'. J'espère ne pas avoir trop développé et avoir répondu à ton problème
|
||||||
|
|
10
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Développeur informatique Inscription : mars 2010 Messages : 139 ![]() |
Tout d'abords merci de ta réponse mais aussi de ton développement.
Je me rend compte "que même en javaScript/Jquery" l'élaboration d'un structurogramme est plus qu'utile. Il est vrai que c'est judicieux de refermer tout les éléments possédant une class 'cache' pour ensuite n'ouvrir que les élément enfant de l'élément sur lequel le clique est activé en l'occurance possédant une class 'ouvrir'. Grace à ces explications j'ai bien un menu accordéon et rajouter une clause sinon qui referme tout les éléments possédant une class 'cache' dans le cas ou l'attribut n'est pas ':hidden'. Merci de ta réponse et j'espère que mon raisonnement de ce présent est correct. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com