jquery - 在多级列表上使用滑动切换时,第 2 级将如同单击了第 1 级一样

标签 jquery slidetoggle

我正在尝试使用列表进行多级导航,但是当我切换第一个级别并单击第二个级别以显示第三个级别时,第二个级别会切换。想知道这个问题是否有解决办法?

到目前为止我的代码:

 $(document).ready(function(){
    $(".listSchool").click(function(){
    $(this).children("ul").children().slideToggle();
});

$(".listClass").click(function(){
    $(this).children("ul").children().slideToggle();
});
});

最佳答案

您想要停止事件冒泡。

基本上,当您单击内部元素时,父元素也会被单击。如果该父级有一个绑定(bind)为点击的事件,则会触发该事件。

使用event.stopPropagation();应该可以防止这种情况。

jQuery API - event.stopPropagation

$(document).ready(function(){
   $(".listSchool, .listClass").click(function(event){
     event.stopPropagation();
     $(this).children("ul").slideToggle();
   });
});

关于jquery - 在多级列表上使用滑动切换时,第 2 级将如同单击了第 1 级一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9764519/

相关文章:

javascript - 错误的计时问题,Telerik RadEditor 控件的客户端事件和 jquery 的页面就绪事件

javascript datetime 将零添加到单个数字值

javascript - IE 中的 PrtScn 按钮的行为与使用 java 脚本的其他浏览器不同

javascript - 在 div 和幻灯片内容之间切换

jquery - 滑动切换 div 的一半?

javascript - Jquery Slidetoggle 显示隐藏 一次一个 div

jQuery幻灯片切换: jumpy at the end

带缩放功能的 JQuery 径向图

带有负整数的 jQuery maskedinput

jquery - jQuery UI Sortable 与 SlideToggle 结合使用时,拖动有时会失败(举例!)