我正在尝试将包含特定文本字符串的任何元素更改为红色。在我的例子中,我可以让孩子的元素变成蓝色,但是我写了一个不正确的“替换我”行的方式,红色变化不会发生。我注意到,“contains”方法通常写为:contains,但我无法使用$(this)进行验证。
$('#main-content-panel .entry').each(function() { $(this).css('color','blue'); }); $('#main-content-panel .entry').each(function() { if($(this).contains("Replace Me").length > 0) { $(this).css('color','red'); } });
解决方法
我不认为在jQuery中有一个.contains函数。有一个.contains函数,但该函数用于查看DOM元素是否是另一个DOM元素的后代。
See documentation for .contains.(Credits to
@beezir)
我想你在找:包含选择器。请参阅下面的更多细节,
$('#main-content-panel .entry:contains("Replace Me")').css('color','red');