目的:替换页面的所有“收货”为“联系”
代码:var reg = new RegExp("收货", "g");
var stringObj = document.body.innerHTML;
var newStr = stringObj.replace(reg, "联系");
document.write(newStr);
这样处理完了就没有样式了,我是在body onload里加载的,求老鸟们指点下
------解决方案--------------------
- HTML code
<!DOCTYPE html> <html> <head> <meta charset="gb2312" /> <title></title> <style type="text/css"> </style> </head> <body> <div id="test"> 收货123收货333333333333收货123 </div> <script type="text/javascript"> var t = document.getElementById('test'); var reg = new RegExp("收货", "g"); var stringObj = t.innerHTML; var newStr = stringObj.replace(reg, "联系"); t.innerHTML = newStr; </script> </body> </html>
------解决方案--------------------
你在body中绑定onload事件去执行函数,但函数中却使用document.write(newStr);
这样,你一执行完,当前页面中就只剩下了:newStr了。你右键查看一下页面的源文件就知道了
document.body.innerHTML=newStr;//试试
或者像我楼上这位举的例子一样,将所有的内容放进一个div内。省得你body中出现不可控的意外的时候,你觉得莫名其妙