Bonjour, j'ai quelque problème pour créer un menu du genre :
sachant que les titre son des liens
Code :
- <ul id="menu">
- <li>Titre 1
- <ul>
- <li>Sous titre 1</li>
- <li>Sous titre 2</li>
- </ul>
- <li>
- <li>Titre 2<li>
- <li>Titre 3<li>
- </ul>
|
voici mon code pour faire apparaitre les sous menus, avec une méthode d'écouteur
Code :
- var menulist = document.getElementById("menu" );
- for(i = 0; i < menulist.childNodes.length; i++){
- if(menulist.childNodes[i].tagName == "LI" ){
- if (menulist.childNodes[i].addEventListener){
- menulist.childNodes[i].addEventListener('click', show, false);
- } else if (menulist.childNodes[i].attachEvent) {
- menulist.childNodes[i].attachEvent('onclick', show());
- }
- }
- }
- }
- function show(event){
- this.childNodes[2].style.display = ''
- }
|
donc voila mon problèmes :
a mon grand désespoir "currentTarget" n'existe pas sous ie
je voulais faire un truc genre
Code :
- menulist.childNodes[i].attachEvent('onclick', show(i));
|
mais c'est pas dynamique ca me prend la valeur final de "i"
y'a t'il un moyen de récupérer se qui a été cliqué sous IE ?
Message édité par stealth35 le 29-05-2008 à 16:12:10