从点击处理程序

时间:2015-08-28 19:06:46

标签: jquery jquery-selectors

如何为某个班级的<li>元素添加点击处理程序?
我想做这样的事情:

$('ul.listClass li a :not(li.thisLi)').on("click")...

3 个答案:

答案 0 :(得分:2)

您的:not选择器位置错误,您应该在li上使用它。

$('ul li:not(.thisLi) a').on('click', ...);

答案 1 :(得分:2)

:not()应用于选择器的li部分,并指定要排除的类选择器。

$('ul.listClass li:not(.thisLi) a')

这转换为:
选择[<a>里面的[<li>,但不在{<ul>内有类&#34; thisLi&#34;]等级&#34; listClass& #34;]

供参考,请参阅jQuery&#39; :not() selector

  

内部接受所有选择器:not()

&#13;
&#13;
$('ul.listClass li:not(.thisLi) a').on("click", function() {
  $(this).css({
    'background-color': 'red'
  });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="listClass">
  <li><a>Yes</a></li>
  <li><a>Yes</a></li>
  <li class="thisLi"><a>No</a></li>
  <li><a>Yes</a></li>
  <li class="thisLi"><a>No</a></li>
</ul>
&#13;
&#13;
&#13;

答案 2 :(得分:-1)

我刚刚使用jquery的#not方法找到了答案。

http://api.jquery.com/not/

为我工作。