使用jquery contains更改div中文本的颜色

div里面的整个文字都是红色的。 但我只需要更改“条形”字的颜色

    new document    $(document).ready(function(){ $("#foo:contains('bar')").css('color','red'); });    
this is a new bar

可以这样做:

http://jsfiddle.net/PELkt/

 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.