我试图更改文字的颜色,但它无效。
这就是我所拥有的:
function LinesForKeyword($container, word) {
var word = word.trim();
// wrap each word in a span and add it to a tmp
var tmp = '';
//$.each(word, function (i, word) {
for (var i = 0; i < reservedKeyWords.length; i++) {
if (word == reservedKeyWords[i]) {
word=word.replace(word, '[<font color="blue">'+word+'</font>]');
}
}
当我在调试模式中逐步执行代码时,它表示字体颜色已更改,我的意思是,当我将鼠标悬停在调试模式下的word
时,这就是它显示的内容:
"[<font color="blue">string</font>]"
然后一旦它完成它从未实际更新颜色,它只是保持黑色:(
答案 0 :(得分:1)
要使用JavaScript更改字体颜色,只需在.replace()
方法调用之前使用以下内容:
word.style.color = "blue";
为了我们所有的理智,请不要使用<font>
标签,因为它的灭绝与恐龙一样古老。
这是我相信你正在寻找的一个例子。请务必在需要时更改代码:
var spans = document.getElementsByClassName("myClass");
var keywords = [ "is", "test" ];
for (var i = 0; i < keywords.length; i++) {
for (var j = 0; j < spans.length; j++) {
if (spans[j].innerHTML === keywords[i]) {
spans[i].style.color = "blue";
}
}
}
<div id="myDiv">This <span class="myClass">is</span> a <span class="myClass">test</span></div>
这也是一个方便你的方式:
编辑#2:
这是一个小jQuery的例子。它抓取特定元素中的所有<span>
元素并执行相同的操作。