Bonjour,
Je travaille sur la création d'un menu avec du javascript non intrusif.
Je bloque sur le point suivant :
Pour chaque rubrique, j'ai un sous menu sauf pour la première rubrique, ce qui fait qu'ensuite le nommage de mes sous-rubriques est décalé :
Javascript (en construction) :
Comment dois-je modifier mon code pour éviter ce décalage ?
Merci.
Modifié par EricLB (11 Aug 2006 - 10:02)
Je travaille sur la création d'un menu avec du javascript non intrusif.
Je bloque sur le point suivant :
Pour chaque rubrique, j'ai un sous menu sauf pour la première rubrique, ce qui fait qu'ensuite le nommage de mes sous-rubriques est décalé :
(code généré par JS)
<dl id="menu">
<dt id="menu1"><a href="#">Menu 1</a></dt>
<dt id="menu2">Menu 2</dt>
<dd id="smenu1">
<ul>
<li><a href="#">Sous-Menu 2.1</a></li>
<li><a href="#">Sous-Menu 2.2</a></li>
<li><a href="#">Sous-Menu 2.3</a></li>
</ul>
</dd>
<dt id="menu3">Menu 3</dt>
<dd id="smenu2">
<ul>
<li><a href="#">Sous-Menu 3.1</a></li>
<li><a href="#">Sous-Menu 3.1</a></li>
<li><a href="#">Sous-Menu 3.1</a></li>
<li><a href="#">Sous-Menu 3.1</a></li>
<li><a href="#">Sous-Menu 3.1</a></li>
<li><a href="#">Sous-Menu 3.1</a></li>
</ul>
</dd>
</dl>
Javascript (en construction) :
function showmenu(id) {
if (!document.getElementsByTagName) return false;
var dls = document.getElementsByTagName("dl");
for (var va=0;va<dls.length;va++) {
var dts = dls[va].getElementsByTagName("dt");
var dds = dls[va].getElementsByTagName("dd");
for (var vb=0;vb<dts.length;vb++) {
vc=vb+1;
dts[vb].setAttribute("id","menu"+vc);
dds[vb].setAttribute("id","smenu"+vc);
}
}
}
Comment dois-je modifier mon code pour éviter ce décalage ?
Merci.
Modifié par EricLB (11 Aug 2006 - 10:02)