parent / sibling / child上的jQuery removeClass

前端之家收集整理的这篇文章主要介绍了parent / sibling / child上的jQuery removeClass前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用以下jQuery来改变无序列表中元素的类.看来效果似乎不是最有效的方式.有没有更好的方法来写这个?
$(function() {
    $('nav li a').click( function() {
        $(this).parent().siblings().children().removeClass('active');
        $(this).addClass('active');
    });
});

谢谢

小号

解决方法

在这些情况下,将处理程序附加到< li>并从< a>点击 bubble up (默认情况下会发生).然后你的处理程序看起来像这样:
$(function() {
  $('nav li').click( function() {
    $(this).addClass('active').siblings().removeClass('active');
  });
});

然后在您的CSS中,您只需在< li&gt

li.active a { color: red; }

另外,如果你有很多< li>你想要使用的元素.delegate()就像这样:

$('nav').delegate('li','click',function() {
  $(this).addClass('active').siblings().removeClass('active');
});

猜你在找的jQuery相关文章