:not() Selector


not selector

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

  • 添加的版本: 1.0jQuery( ":not(selector)" )

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

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

Additional Notes(其他注意事项):

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

例子:

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!DOCTYPE html>
<html>
<head>
<script src="https://code.jquery.com/jquery-latest.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>

Demo: