Salut,
J'ai cr�� une arborescence de menu de ce style :
Etat ferm�: + Menu
Qui devient
- Menu
+ Item
Et enfin
Etat ouvert: - Menu
- Item1
blablabla
lorsque je clique sur les + (via un onclick=expand)
J'aurais voulu maintenant ajouter un bouton ext�rieur qui me permettrait d'arriver directement � l'�tat ouvert, du genre "Ouvrir tous les +".
Voil� la fonction JS que j'utilise (je pr�cise qu'elle n'est pas de moi) :
Et voici ma page HTM
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 // Fonction qui affiche/cache un menu function expand(li) { var node = li.firstChild; var img = li.firstChild; // parcours tous les fils pour trouver l'element UL while ( node.nodeName != "UL" ) node = node.nextSibling; // parcours tous les fils pour trouver l'element IMG while ( img.nodeName != "IMG" ) img = img.nextSibling; // affiche le menu if ( node.style.display == 'none' ) { node.style.display = 'block'; img.src = 'images/moins.gif'; img.alt = '[-]'; } // cache le menu else { node.style.display = 'none'; img.src = 'images/plus.gif'; img.alt = '[+]'; } }
Est ce que quelqu'un a une id�e ?
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 <ul> <li> <img src="images/plus.gif" onclick="expand(this.parentNode)" class="icoh2" width="9" height="9"> <p>Menu</p> <ul class="toc" style="display:none"> <li> <img src="images/plush3.gif" onclick="expand(this.parentNode)" class="icoh3" width="9" height="9"> <p>Item1</p> <ul class="toc" style="display:none"> <li class="marg"> blabla </li> </ul> </li> </ul> </li> </ul>
Je pensais faire un genre de boucle sur cette fonction en parcourant toute la page mais n'y connaissant rien en JavaScript je ne sais pas comment proc�der.
Merci !
Partager