大家好,我想用js的正则表达式把页面中的字体颜色都替换成黑色,请问怎么写?

时间:2021-10-24 18:46:21
<html>
<head>
<title></title>
</head>
<body>
<div id="d1">
**<br />
<span id="s1"><font style="color:#ccc666;">**</font></span><br />
<span id="s2">**</span><br />
<span id="s3" style="color:#aaa999;">**</span>
</div>
</body>
<html>
<script type="text/javascript">
//这里面怎么写
</script>

8 个解决方案

#1


页面内容如上所示

#2


html = html.replace(/(\bcolor:#[a-f\d]+)/g, "color:Black");

#3


一定要用正则吗?用css样式完全可以,
document.body.style.fontColor = "black";
或者

body{
   font-color:#000000;
}

#4


把style全部replace掉,加入css代码控制样式

#5


3楼的貌似不行,使用font或其他标签制定了颜色的就不能变黑了
用2楼伴水哥的改了改

<div id="d1">
**<br />
<span id="s1"><font style="color:#ccc666;">**</font></span><br />
<span id="s2">**</span><br />
<span id="s3" style="color:#aaa999;">**</span>
</div>
</body>
<html>
<script type="text/javascript">
var d1 = document.getElementById("d1");
alert(d1.innerHTML);
d1.innerHTML = d1.innerHTML.replace(/color:\s#[a-f\d]{6}/ig, "color:Black");
/*
IE的话会将代码自动格式化为 style="COLOR: #000000;" 的格式
所以要忽略大小写
*/
</script>

#6


呵呵,javascript群里面的高手帮我弄好了,代码如下:
<html>
<head>
<title></title>
</head>
<body>
<div id="d1">
**<br />
<span id="s1"><font style="color:#ccc666;">**</font></span><br />
<span id="s2">**</span><br />
<span id="s3" style="color:#aaa999;">**</span>
</div>
</body>
<html>
<script type="text/javascript">
function ccolor(){
var content = document.getElementById("d1").innerHTML;
var reg = /\#[0-9a-zA-Z]{6}/g;
content = content.replace(reg,"#000");
document.getElementById("d1").innerHTML = content;
}
ccolor()
</script> 

#7


上面发错了,不好意思,应该是如下代码:
<html>
<head>
<title></title>
</head>
<body>
<div id="d1">
**<br />
<span id="s1"><font style="color:#ccc666;">**</font></span><br />
<span id="s2">**</span><br />
<span id="s3" style="color:#aaa999;">**</span>
</div>
</body>
<html>
<script type="text/javascript">
function ccolor(){
var content = document.getElementById("d1").innerHTML;
var reg = /\#[0-9a-fA-F]{6}/g;
content = content.replace(reg,"#000");
document.getElementById("d1").innerHTML = content;
}
ccolor()
</script>

#8


引用 7 楼 zjanhoo 的回复:
上面发错了,不好意思,应该是如下代码:
<html>
<head>
<title></title>
</head>
<body>
<div id="d1">
**<br />
<span id="s1"><font style="color:#ccc666;">**</font></span><br />
<span id="s2"……


这个是把所有颜色代码都替换了,如果有背景色、边框色也都变成黑的了
如果没有,那没问题

#1


页面内容如上所示

#2


html = html.replace(/(\bcolor:#[a-f\d]+)/g, "color:Black");

#3


一定要用正则吗?用css样式完全可以,
document.body.style.fontColor = "black";
或者

body{
   font-color:#000000;
}

#4


把style全部replace掉,加入css代码控制样式

#5


3楼的貌似不行,使用font或其他标签制定了颜色的就不能变黑了
用2楼伴水哥的改了改

<div id="d1">
**<br />
<span id="s1"><font style="color:#ccc666;">**</font></span><br />
<span id="s2">**</span><br />
<span id="s3" style="color:#aaa999;">**</span>
</div>
</body>
<html>
<script type="text/javascript">
var d1 = document.getElementById("d1");
alert(d1.innerHTML);
d1.innerHTML = d1.innerHTML.replace(/color:\s#[a-f\d]{6}/ig, "color:Black");
/*
IE的话会将代码自动格式化为 style="COLOR: #000000;" 的格式
所以要忽略大小写
*/
</script>

#6


呵呵,javascript群里面的高手帮我弄好了,代码如下:
<html>
<head>
<title></title>
</head>
<body>
<div id="d1">
**<br />
<span id="s1"><font style="color:#ccc666;">**</font></span><br />
<span id="s2">**</span><br />
<span id="s3" style="color:#aaa999;">**</span>
</div>
</body>
<html>
<script type="text/javascript">
function ccolor(){
var content = document.getElementById("d1").innerHTML;
var reg = /\#[0-9a-zA-Z]{6}/g;
content = content.replace(reg,"#000");
document.getElementById("d1").innerHTML = content;
}
ccolor()
</script> 

#7


上面发错了,不好意思,应该是如下代码:
<html>
<head>
<title></title>
</head>
<body>
<div id="d1">
**<br />
<span id="s1"><font style="color:#ccc666;">**</font></span><br />
<span id="s2">**</span><br />
<span id="s3" style="color:#aaa999;">**</span>
</div>
</body>
<html>
<script type="text/javascript">
function ccolor(){
var content = document.getElementById("d1").innerHTML;
var reg = /\#[0-9a-fA-F]{6}/g;
content = content.replace(reg,"#000");
document.getElementById("d1").innerHTML = content;
}
ccolor()
</script>

#8


引用 7 楼 zjanhoo 的回复:
上面发错了,不好意思,应该是如下代码:
<html>
<head>
<title></title>
</head>
<body>
<div id="d1">
**<br />
<span id="s1"><font style="color:#ccc666;">**</font></span><br />
<span id="s2"……


这个是把所有颜色代码都替换了,如果有背景色、边框色也都变成黑的了
如果没有,那没问题