1
我有classis HTML 2级深度的导航菜单看起来像这样:jQuery的元素选择
<nav>
<ul>
<li><a href="#">1</a>
<ul>
<li><a href="#">1.1</a><li>
<li><a href="#">1.2</a><li>
<li><a href="#">1.3</a><li>
</ul>
</li>
<li><a href="#">2</a>
<ul>
<li><a href="#">2.1</a><li>
<li><a href="#">2.2</a><li>
<li><a href="#">2.3</a><li>
</ul>
</li>
<!-- etc -->
</ul>
</nav>
jQuery的功能应该使切换上点击。第一级是好的,但在第二级下,当我点击锚点1时,它不打开与该锚点元素相关的子菜单(1.1,1.2,1.3),但它切换所有子菜单(1.x, 2.x,3.x,..)一次。那么如何让它只影响被点击的锚元素的子元素?
jQuery(document).ready(function($){
$('nav').prepend('<div id="menu-icon">Menu</div>');
$("nav > ul").hide();
$("nav > ul >li > ul").hide();
$("#menu-icon").on("click", function(){
$("nav > ul").slideToggle();
$(this).toggleClass("active");
}
);
$("nav > ul > li > a ").on("click", function(){
$("nav > ul > li > ul").slideToggle();
$(this).toggleClass("active");
}
);
});
更新:这里是的jsfiddle:http://jsfiddle.net/kNZ3E/
你可以制作一个JSFiddle吗? – Raptor
刚刚更新了链接的问题。 – Cornelius