一个在类上匹配的javascript选择器,不包括其他选择器

时间:2015-08-18 17:36:23

标签: javascript css sizzle

我正在尝试为querySelector编写一个选择器,它将包含class" foo"的div。但不是" foo bar"。我在这个项目中没有使用jQuery。

<div class="foo">include me</div>
<div class="foo">and me</div>
<div class="foo bar">not me</div>

我尝试过使用:not(),但我不确定正确的语法,因为这对我不起作用

document.querySelectorAll('div.foo|*:not(.bar)');

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:4)

应该是

document.querySelectorAll('div.foo:not(.bar)');

这将选择div class的所有.foo元素,而.foo

选择.bar

Demo(检查控制台输出)

答案 1 :(得分:0)

怎么样

document.querySelectorAll('div.foo:not(.bar)');