单击内部标记时将类添加到li

时间:2015-07-29 14:25:53

标签: javascript jquery html css

我想在点击标签时向li添加一个类我正在使用jQuery addclass但不确定如何将它添加到LI

SELECT from_unixtime(1433930400, 'dd-MMM-yy hh.mm.ss a');

我希望这是有道理的

提前致谢

3 个答案:

答案 0 :(得分:5)

您可以通过添加以下点击功能

来实现
$("ul.nav > li > a").click(function(){
     $(this).parent().addClass("your_class");
});

答案 1 :(得分:3)

为了提高效率,您应该使用附加到.nav元素的单个委托事件处理程序:

如果您希望所有兄弟元素删除该类,请使用not

e.g。

    $('.nav').on('click', 'li > a', function(){
          var $li = $(this).parent();
          $li.siblings().not($li.addClass('smclass')).removeClass('smclass');
    });

注意:.nav > li(强调>)的答案仅适用于顶级链接。您需要澄清是否要在所有链接上执行相同的操作(此示例当前执行此操作)。

如果您只想让它在顶级链接上工作,那么

    $('.nav').on('click', '> li > a', function(){
          var $li = $(this).parent();
          $li.siblings().not($li.addClass('smclass')).removeClass('smclass');
    });

答案 2 :(得分:2)

您可以使用直接子选择器来定位所有直接子元素:

$('.nav > li > a').click(function(){
  $(this).parent().addClass('smclass')
});