Jquery removeClass没什么用

时间:2013-07-31 10:43:53

标签: jquery removeclass

示例代码和示例为here

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

但点击和选择的背景是工作的另一个点击多选择不删除不工作...请帮助和解决方案......

3 个答案:

答案 0 :(得分:1)

您的a元素没有兄弟姐妹。您必须在父a的兄弟姐妹中选择li个元素。

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

看到它起作用: http://jsfiddle.net/QFWLk/1/

答案 1 :(得分:1)

您有点击处理程序注册到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

答案 2 :(得分:1)

试试这个

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

});

希望它会有所帮助