2017-09-18 137 views
0

我一直在努力工作几天,现在正在与jQuery一起尝试编写一个脚本,它从论坛的聊天箱中替换动态创建的span色彩。
两个元素包裹td元素与class="chat"和跨度内与style="color:green"这样jQuery动态HTML属性覆盖脚本

<td class="chat"><span style="color:darkgreen;">test</span></td> 

脚本我试着写例如(未黯然工作);

$(".chat:contains('darkgreen')").css("color", "rgb(255, 111, 7)"); 
$(".chat:contains('darkgreen')").css("font-weight", "bold"); 
$(".chat:contains('darkgreen')").css("text-shadow", "bold"); 
$(".chat:contains('darkgreen')").css("text-shadow", "rgb(0, 0, 0) 1px 1px 1px"); 
$(".chat:contains('darkgreen')").css("text-shadow", "rgb(255, 111, 7) 1px 0px 6px"); 

我也试着用一些其他类,如tdchat但他们没有工作无论哪种方式改变类“聊天”,任何想法我怎么能使其即使在一个新的td用jQuery工作&类正在由聊天框生成用我的CSS来改变他们想要的跨度颜色?

+0

访问它缺少一个点有:'$(: - 聊天>跨度[风格=” “聊天contains'也尝试'$(”。 color:darkgreen;']“)' – mplungjan

+0

我试着在这个类中加入一个点,也请原谅我在最后三行结尾处丢失了三个分号,但它仍然没有运行 – AquaRush

回答

0

您可以通过

$(".chat>span[style='color:darkgreen;']") 
 
.css({ 
 
    "color":"rgb(255, 111, 7)", 
 
    "font-weight": "bold", 
 
    "text-shadow": "bold", 
 
    "text-shadow": "rgb(0, 0, 0) 1px 1px 1px", 
 
    "text-shadow": "rgb(255, 111, 7) 1px 0px 6px" 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tr> 
 
    <td class="chat"><span style="color:darkgreen;">test</span></td> 
 
    </tr> 
 
</table>

+0

尝试了你编写的脚本,但是它没有改变任何东西,我使用Tampermonkey来应用jQuery代码,这可能是我针对的URL不正确吗?刷新页面我试图应用代码来改变颜色,但它很少发生,每当我在聊天框中输入某些东西时,效果就会丢失,并且不会覆盖新的跨度。 – AquaRush

+0

更新:您的代码似乎工作得非常好,剩下的唯一问题是脚本本身并不总是将更改应用于网页,刷新它或切换到另一个聊天选项卡会失去整个效果,并且在生成新消息之后在chatbox中,jQuery脚本不会对其应用更改。 – AquaRush

+0

您需要发布更多代码,以显示何时以及如何应用它。你需要使用代理 – mplungjan