如果元素包含某些文本

Use*_*upt 13 javascript jquery

$('.test').css('background','red');

<div id="example">Some text</div>
Run Code Online (Sandbox Code Playgroud)

.addClass('test')如果#example包含"文本"一词,我该怎么办?

fca*_*ran 17

只是使用:contains伪类

$('#example:contains("text")').addClass('test');
Run Code Online (Sandbox Code Playgroud)

这将添加类,#example如果它包含'文本'


T.J*_*der 6

您可以使用$("#example")获取元素的jQuery包装器,然后使用它text()来获取其文本,并使用String#indexOf,例如:

var ex = $("#example");
if (ex.text().indexOf("text") !== -1) {
    ex.addClass("test");
}
Run Code Online (Sandbox Code Playgroud)

您也可以:contains("text")F. Calderan显示的选择器中使用,但请注意,当您使用非标准的伪选择器时,jQuery不能使用底层浏览器的内置函数来查找元素,因此它可能会更慢.以上将允许jQuery使用document.getElementById.但是,只有少数情况下速度才真正重要.