使用jquery contains更改div中文本的颜色
div里面的整个文字都是红色的。 但我只需要更改“条形”字的颜色
new document $(document).ready(function(){ $("#foo:contains('bar')").css('color','red'); }); this is a new bar
可以这样做:
var search = 'bar'; $(document).ready(function () { $("div:contains('"+search+"')").each(function () { var regex = new RegExp(search,'gi'); $(this).html($(this).text().replace(regex, ""+search+"")); }); });
$("div:contains('bar')").each(function () { $(this).html($(this).html().replace("bar", "bar")); });
这肯定会奏效
请看这里的演示
你可以这样使用:
$(document).ready(function(){ // $("#foo:contains('bar')").css('color','red'); var text = 'bar' ; var context = $("#foo").html(); $("#foo").html(context.replace(text,''+text+'')); });
试试这个… 原型库:
this is a new bar
你可以这样做。
$(document).ready(function(){ var matchingTest = 'demo'; $("#container:contains("+matchingTest+")").each(function () { $(this).html($(this).html().replace(matchingTest, ""+matchingTest+"")); }); });
.red{ background:#eada93; }
Hello this is a demo contents.
解决方案与代码片段..
var text_change = 'bar'; $(document).ready(function () { $("div:contains('"+text_change+"')").each(function () { var regex = new RegExp(text_change,'gi'); $(this).html($(this).text().replace(regex, ""+text_change+"")); }); });
.red { color:#008000; }
this is a new bar and bar.