$('.test').css('background','red');
<div id="example">Some text</div>
如果.addClass('test')
包含“text”一词,我该如何#example
?
答案 0 :(得分:16)
只需使用:contains
伪类
$('#example:contains("text")').addClass('test');
如果它包含'text'
,则会将该类添加到#example
答案 1 :(得分:6)
您可以使用$("#example")
获取元素的jQuery包装器,然后使用text()
获取其文本,并使用String#indexOf
,例如:
var ex = $("#example");
if (ex.text().indexOf("text") !== -1) {
ex.addClass("test");
}
您也可以在选择器中使用:contains("text")
作为F. Calderan shows,但请注意,当您使用非标准伪选择器时,jQuery无法使用底层浏览器的内置内容找到元素,所以它可能会更慢。以上将允许jQuery使用document.getElementById
。但是,只有少数情况下速度才真正重要。
答案 2 :(得分:1)