我这里有一个带有嵌套 ul 的简单 ul 菜单
我希望嵌套菜单在单击链接时向下滑动,并在第二次单击时再次向上滑动。这是有效的。
当单击另一个链接时,我还需要关闭任何其他打开的嵌套菜单。这是行不通的。
在打开我想要的嵌套菜单之前,我尝试使用它来关闭任何打开的嵌套菜单,但是当单击嵌套菜单中的链接时,这也会关闭嵌套菜单。
$(document).ready(function () {
$('#nav ul.children').slideUp();
$('#nav li').click(function (e) {
$('ul.children').slideUp();
$('ul', this).slideToggle();
e.stopPropagation();
});
});
http://www.ttmt.org.uk/forum/nav/index2.html
如何在单击其父级时滑动切换嵌套菜单并在单击另一个链接时关闭任何打开的嵌套菜单。
<ul id="nav">
<li><a href="#">One</a>
<ul class="children">
<li><a href="http://www.google.com">One/One</a></li>
<li><a href="http://www.bbc.com">One/Two</a></li>
<li><a href="#">One/Three</a></li>
</ul>
</li>
<li><a href="#">Two</a></li>
<li><a href="#">Three</a>
<ul class="children">
<li><a href="#">Three/One</a></li>
<li><a href="#">Three/Two</a></li>
</ul>
</li>
</ul>
$(document).ready(function(){
$('#nav ul.children').slideUp();
$('#nav li').click(function(e){
//$('ul.children').slideUp();
$('ul', this).slideToggle();
e.stopPropagation();
});
});
编辑
我的代码还有另一个主要问题,因为我一开始就关闭了嵌套的 ul
$('#nav ul.children').slideUp();
单击链接并重新加载页面时,所有菜单都将关闭。如何在页面重新加载时保持嵌套菜单打开。