Jquery menu déroulant sur le vol stationnaire ou sur un clic
J'ai un menu qui ressemble à celui ci-dessous. Je veux que le premier niveau de l'enfant à apparaître sur le vol stationnaire OU sur un clic (de sorte qu'il fonctionne sur l'iPad comme bien). Lorsque vous passez la souris (ou en cliquant sur) fir-enfant au niveau que je veux c'est le deuxième niveau de l'enfant si elles existent. Sur le vol stationnaire ou lors d'un clic sur un autre DOM-tout élément du sous-menu doit être cachée à nouveau.
Aussi quand un utilisateur est sur la page, je veux menu pour être replié jusqu'à ce qu'il plane au-dessus ou clique sur un autre élément de menu, il peut toujours voir où il en est dans la navigation.
Je suis la construction de ce sous WordPress pour un ami qui devrait être en mesure de créer et de modifier son menu de navigation à l'aide de l'arrière-plan. Par conséquent, l'ajout de certaines classes ou ID de certains éléments n'est pas une option.
<style>
.sub-menu {display: none;}
</style>
<ul class="menu">
<li>child 1
<ul class="sub-menu">
<li>child 1.1
<ul class="sub-menu">
<li>child 1.1.1</li>
<li>child 1.1.2</li>
</ul>
</li>
<li>child 1.2
<ul class="sub-menu">
<li>child 1.2.1</li>
<li>child 1.2.2</li>
</ul>
</li>
</ul>
</li>
<li>child 2
<ul class="sub-menu">
<li>child 2.1</li>
<li>child 2.2</li>
</ul>
</li>
</ul>
C'est ce que je suis venu avec, mais il ne fonctionne pas. Lors du survol de l'enfant 1.1 les deux 1.1 et 1.2 les frères et sœurs sont affichés.
$("ul.menu li").hover(function() {
$(this).find("ul.sub-menu").not("ul.sub-menu li ul.sub-menu").slideDown();
} , function() {
$(this).find("ul.sub-menu").hide();
});
$("ul.menu li ul.sub-menu").hover(function() {
$(this).find("ul.sub-menu").slideDown();
} , function() {
$(this).find("ul.sub-menu").hide();
});
OriginalL'auteur WhoMe | 2012-07-04
Vous devez vous connecter pour publier un commentaire.
Essayez les solutions suivantes en ciblant Directement les
ul
Solution Un:
Solution B:
pour plus de Précision sur les deux ULs
Mise à jour: la Solution A fonctionne très bien et fait B redondant
Vérifier la Violon
Fonctionne parfaitement avec très peu de code. Merci
OriginalL'auteur Om Shankar
Ce n'est pas testé .. et vous devez le développer un peu.
Edit: Comme je vois que votre structure est incohérent. Parfois, vous placez une liste DANS un élément li, parfois, il est placé comme un frère ou une sœur...
J'ai édité la structure, de sorte qu'il est conforme. Merci.
OriginalL'auteur Daniel