使用 Javascript,我想构造 myFunction()
这样的 HTML 代码:
<body onload="myFunction();">
Hello world! This is "'my' webpage"!<br>
Do you know what "Javascript" is?
</body>
将转换为以下 HTML 代码:
<body onload="myFunction();">
Hello world! This is <a style="color: blue;">"'my' webpage"</a>!<br>
Do you know what <a style="color: blue;">"Javascript"</a> is?
</body>
换句话说,我希望(双)引号 ""
之间的所有字符都是蓝色的。
我尝试过这个:
function myFunction() {
var body_content = document.getElementsByTagName("body")[0].innerHTML;
document.getElementsByTagName("body")[0].innerHTML =
body_content.replace(/\"/g, '<a style="color: Blue;">"');
}
但是在正文中的第一个双引号之后,它使所有内容都变成蓝色。
如何构造 myFunction()
?
最佳答案
更改您的正则表达式,
var body_content = document.getElementsByTagName("body")[0].innerHTML;
document.getElementsByTagName("body")[0].innerHTML =
body_content.replace(/"([^\"]*)"/g,"<a style='color: Blue;'>\"$1\"</a>");
jsFiddle对于这个例子
关于javascript - 将字符颜色从一个设置为另一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22907058/