:not(selector)

选择所有元素去除不匹配给定的选择器的元素。

jQuery(":not(selector)")

selector: 一个用来过滤的选择器。

所有的选择器可以放置在 :not() 中,例如 :not(div a) :not(div,a)

Additional Notes(其他注意事项):

.not() 方法可以让代码更易读。而使用 :not() 通常会构建出一个非常复杂的选择器。所以大多数情况下,推荐使用 .not() 方法。

例子

查找所有没有被选中的复选框,然后高亮后面的 span。注意,当你点击复选框的时候不会有反应,因为没有绑定任何点击事件。

<!DOCTYPE html>
<html>
<head>
  <script src="./static/js/jquery-3.5.0.js"></script>
</head>
<body>
  <div>
  <input type="checkbox" name="a" />
  <span>Mary</span>
</div>
 
<div>
  <input type="checkbox" name="b" />
  <span>lcm</span>
 
</div>
<div>
  <input type="checkbox" name="c" checked="checked" />
 
  <span>Peter</span>
</div>
<script>
  $("input:not(:checked) + span").css("background-color", "yellow");
  $("input").attr("disabled", "disabled");
 
</script>
 
</body>
</html>

上篇: :lt(index)

下篇: :header