我試圖放在一起使用click
而不是hover
來顯示子菜單(或下拉菜單)的導航菜單。點擊jQuery動畫子菜單
我已經設置了它,但它不工作。點擊另一個時,我不知道如何關閉當前打開的子菜單。
HTML:
<ul id="menu-primary-navigation" class="menu nav-main">
<li class="nav-about"><a href="#">About us</a>
<ul class="sub-menu" style="display: none; ">
<li><a href="/what-we-do/">What we do</a></li>
<li><a href="/why-we-do-it/">Why we do it</a></li>
</ul>
</li>
<li class="nav-weare"><a href="#">Who we are</a>
<ul class="sub-menu" style="display: none; ">
<li><a href="/who-we-are/ambassadors/">Ambassadors</a></li>
<li><a href="/who-we-are/trustees/">Trustees</a></li>
</ul>
</li>
<li class="nav-involved"><a href="#">Get involved</a>
<ul class="sub-menu" style="display: none; ">
<li><a href="/get-involved/coach/">Become a coach</a></li>
<li><a href="/get-involved/academy/">Become an academy</a></li>
</ul>
</li>
</ul>
目前得到每個子菜單來顯示和隱藏我用這個jQuery的:
$('#menu-primary-navigation li a').click(function(e) {
e.preventDefault();
$(this).next('.sub-menu').slideToggle('fast');
});
但問題是他們獨立工作,走在每個頂部其他(全部可以一次打開)。
我需要一種方法來檢測另一個關閉任何當前打開的子菜單的頂級鏈接的點擊並顯示點擊鏈接的子菜單。
除了如果您單擊打開的菜單關閉它,它會很好地工作,它會關閉,然後再次打開。 –
嘗試新的代碼。我修改了它以解釋不同的情況http://jsfiddle.net/UNJNy/3/ –
現在,它就像一個魅力。謝謝! –