如标题中所说我有问题,这是示例:
...
<script>
document.body.innerHTML = "";
document.write("<scr"+"ipt>alert(1);<\/scr"+"ipt>");
</script>
清除文档后,我想在其中写一些JS代码(我当然想要执行)。我尝试了其他方法,但似乎它们不起作用(我有浏览器Firefox 6.0)。
有没有人知道这个问题的解决方案或工作替代方案?提前谢谢!
答案 0 :(得分:3)
请勿使用document.write()
。只是不要。 (见Why is document.write considered a "bad practice"?)
试试这个:
var text = 'alert(1);',
script = document.createElement('script');
script.appendChild(document.createTextNode(text));
document.head.appendChild(script);
答案 1 :(得分:1)
document.write仅在加载DOM之前有效; document.body.innerHTML仅适用于。
尝试使用document.body.appendChild来添加新的文本节点。