2

如果 li 说“Thing”,我想附加,但如果它说“Things”则不附加。这可能:contains吗?

$("ul li:nth-child(2):contains('Thing')").append("foo");
4

3 回答 3

7

有一个not 功能

$("ul li:nth-child(2):contains('Thing')").not(':contains("Things")').append("foo");
于 2012-10-02T18:56:42.173 回答
3

如果要选择恰好具有Thing文本内容的元素,可以使用filter方法:

$("ul li:nth-child(2)").filter(function(){
       return $(this).text().trim() === 'Thing'
}).append("foo");
于 2012-10-02T18:57:50.770 回答
0

还有一个:not() 选择器可以帮助压缩代码。

所以它会像

$("ul li:nth-child(2):contains('Thing'):not(:contains('Things'))").append("foo");

小提琴中的一个小例子。

于 2013-12-04T15:16:40.517 回答