Javascript jQuery的组合:not+:contains,它能工作吗?

Javascript jQuery的组合:not+:contains,它能工作吗?,javascript,jquery,jquery-selectors,Javascript,Jquery,Jquery Selectors,但不知为什么它不起作用,有趣的是,如果我删除:not部分: 它确实选择了不需要的div,所以问题一定是:not 我知道还有其他甚至更好的方法,我甚至在那个问题上给出了一些,但我想知道为什么:not+:contains似乎不在一起。您可以使用。not而不是:not: 您可以使用。而不是:不: 我认为这与:有关系 试试这个: $('div.b:not(:contains(not me))').css('color', 'red'); 我认为这与:有关系 试试这个: $('div.b:not(:c

但不知为什么它不起作用,有趣的是,如果我删除:not部分:

它确实选择了不需要的div,所以问题一定是:not

我知道还有其他甚至更好的方法,我甚至在那个问题上给出了一些,但我想知道为什么:not+:contains似乎不在一起。

您可以使用。not而不是:not:

您可以使用。而不是:不:


我认为这与:有关系

试试这个:

$('div.b:not(:contains(not me))').css('color', 'red');

我认为这与:有关系

试试这个:

$('div.b:not(:contains(not me))').css('color', 'red');
工作示例:非+:包含

将更改所有不包含NOT me的分区b的颜色。

工作示例:NOT+:contains


将更改不包含NOT me的所有div.b的颜色。

@eric.itzhak。请读最后一段。。。或者另一个问题。我认为:不支持与:has…一起工作,我认为罪魁祸首是:has不:not@undefined. 这些可以一起工作。@eric.itzhak。请读最后一段。。。或者另一个问题。我认为:不支持与:has…一起工作,我认为罪魁祸首是:has不:not@undefined. 这些可以一起工作。我知道,我问的是:不是选择器。但是感谢您的输入,如果不可能的话,我会接受的。@gdoron:有两个存在的bug,分别是:not和/或:has,这可能是其中一个…:-我的第二次…:@gdoron哈哈,恭喜你。虽然我决定休息两个月,但我想你可能想读一读是的,这是一个bug,它在1.8中修复了。我知道,我问的是:不是选择器。但是感谢您的输入,如果不可能的话,我会接受的。@gdoron:有两个存在的bug,分别是:not和/或:has,这可能是其中一个…:-我的第二次…:@gdoron哈哈,恭喜你。虽然我决定休息几个月,但我想你可能想读一读是的,这是一个bug,它在1.8中被修复了。它真的应该是:不:但不是我。它没有考虑到div应该有一个p元素作为子元素。不管它是否包含p元素,它都可以工作。我是不是误解了你想说的话?其实应该是:不是:不是我。它没有考虑到div应该有一个p元素作为子元素。不管它是否包含p元素,它都可以工作。我是不是误解了你的意思?
$('div.b:has(p:contains(not me))').css('color', 'blue');
$('div.b').not(':has(p:contains("not me"))').css('color', 'red');
$('div.b:not(:contains(not me))').css('color', 'red');
$('div.b:not(:contains("not me"))').css('color', 'cyan');