如标题中所说,我有问题,这是示例:
...
<script>
document.body.innerHTML = "";
document.write("<scr"+"ipt>alert(1);<\/scr"+"ipt>");
</script>
清除文档后,我想在里面写一些JS代码(当然我想被执行)。我尝试了其他方法,但似乎它们不起作用(而且我有浏览器 Firefox 6.0)。
有谁知道这个问题的解决方案或可行的替代方案?提前致谢!
如标题中所说,我有问题,这是示例:
...
<script>
document.body.innerHTML = "";
document.write("<scr"+"ipt>alert(1);<\/scr"+"ipt>");
</script>
清除文档后,我想在里面写一些JS代码(当然我想被执行)。我尝试了其他方法,但似乎它们不起作用(而且我有浏览器 Firefox 6.0)。
有谁知道这个问题的解决方案或可行的替代方案?提前致谢!
不要使用document.write()
. 只是不要。(请参阅为什么 document.write 被认为是“不好的做法”?)
尝试这个:
var text = 'alert(1);',
script = document.createElement('script');
script.appendChild(document.createTextNode(text));
document.head.appendChild(script);
document.write 仅在加载 DOM 之前有效;document.body.innerHTML 仅在之后有效。
尝试使用 document.body.appendChild 来追加一个新的文本节点。