menu et javascipt

WRInaute impliqué
Bonjour,

J'ai mis en place un menu vertical à 2 niveaux, mais je souhaiterai que
que si plusieurs menus de niveau 1 sont ouverts, le dernier menu ouvert soit fermé pour eviter une cascade de menus.
En revanche je ne vois pas la modif à faire au niveau javascipt !


Code:
<style type="text/css">
<!--
li{
cursor: pointer;
}
 
//-->
</style>
 
<script type="text/javascript">
<!--
function GestionMenu(objet){
 var objetFils = "Sous"+objet.id;
 var elmt =  document.getElementById(objetFils);
 
 if (elmt.style.display=="none")
    elmt.style.display = "block";
 else
    elmt.style.display = "none";
 
}
 
//-->
</script>
 
</head>
 
<body>
<ul>
<li id="Menu1"onclick="GestionMenu(this)">Menu 1</li>
    <ul id="SousMenu1" style="display: none">
    <li>Sous menu11</li>
    <li>Sous menu12</li>
    <li>Sous menu13</li>
    </ul>
<li id="Menu2" onclick="GestionMenu(this)">Menu 2</li>
    <ul id="SousMenu2"  style="display: none">
    <li>Sous menu21</li>
    <li>Sous menu22</li>
    <li>Sous menu23</li>
    </ul>
</ul>

merci pour une idée
ludo
 
WRInaute impliqué
narayana a dit:
es tu sur que this renvoie bien ce que tu souhaite ?

Absolument, il fonctionne très bien sauf qu'il n'est pas pratique puisque l'on peut ouvrir successivment tous les menus
 
WRInaute impliqué
Pourquoi ne pas passer par des liens "a href" et gérer la disparation des sous-menus lors d'un :hover.
 
Discussions similaires
Haut