我正在努力合并我的菜单的第二个嵌套列表,以便他们可以打开onclick。以下是我的代码。
另外,如何点击以展开列表并不会触发任何其他事件?现在如果你点击它们,我的整个菜单会从另一个脚本中滑动关闭(这是一个移动响应菜单)所以如果我的菜单项li有一个嵌套列表,我希望点击只打开或关闭它的嵌套列表并做没别的。
http://jsfiddle.net/notanothercliche/36vCh/
<ul class="menu" id="menu-menu">
<li class="menu-item>Home</li> <!-- end Home menu-item -->
<li class="menu-item>Properties
<ul class="dropdown-menu">
<li class="menu-item>Dubai
<ul class="dropdown-menu">
<li class="menu-item>Residential
<ul class="dropdown-menu">
<li class="menu-item>Apartments</li>
<li class="menu-item>Villas</a></li>
</ul> <!-- end Residential dropdown-menu -->
</li> <!-- end Residential menu-item -->
</ul> <!-- end Dubai dropdown-menu -->
</li> <!-- end Dubai menu-item -->
</ul> <!-- end Properties dropdown-menu -->
</li> <!-- end Properties menu-item -->
</ul> <!-- end menu-menu -->
答案 0 :(得分:5)
你不必努力工作。可能没有必要像你一样操纵类。
http://jsfiddle.net/isherwood/36vCh/6
jQuery("#menu-menu a").on("click", function (e) {
if (jQuery(this).parent().has("ul")) {
e.preventDefault();
}
$(this).next('ul').slideToggle();
});
请注意,我添加了一些缺少的引号和必需的href属性。