: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="https://www.lanmper.cn/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>
