Jquery removeClass 没有任何作用

标签 jquery removeclass

示例代码和示例为here .

$("#menus > li > ul > li > a").click(function(){
    $(this).toggleClass("selected").siblings().removeClass("selected");

但是单击并选择背景可以工作,其他单击多项选择不能删除不能工作...请帮助和解决方案...

最佳答案

您已将点击处理程序注册到 a 元素,但它没有同级元素。您需要转到父 li 元素找到其同级元素,然后向下钻取到这些同级元素内的 a 元素

你需要

$("#menus > li > ul > li > a").click(function(){
    $(this).toggleClass("selected").parent().siblings().find('a').removeClass("selected");
});

演示:Fiddle

它又存在一个错误,如果您在两种类型之间导航,请尝试

$("#menus > li > ul > li > a").click(function(){
    $('#menus a.selected').removeClass("selected");
    $(this).toggleClass("selected");
});

演示:Fiddle

关于Jquery removeClass 没有任何作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17968209/

相关文章:

javascript - 在从 sibling 中删除类(class)时切换类(class)

javascript - 检测标签显示,移除类隐藏

jquery - addClass() 然后在单击时removeClass() (jquery)

javascript - 如何通过 jQuery 使用淡入淡出添加类和删除类?

jQuery onclick 添加/删除子元素的类

jQuery:限制 "number"文本框的唯一输入的最佳方法是什么? (允许小数点)

javascript - 每次迭代创建唯一的 id,然后指定单击时的行为

javascript - 在Android设备中,我们如何在通过浏览器上传之前压缩视频?

javascript - Select2 多选下拉导致窗口滚动

javascript - 如何从第二个连字符之后的字符串中获取子字符串?