2014-01-10 77 views
0

我想添加一些脚本到我的页面创建一个脚本标记的元素,然后改变它的innerHTML,它在Chrome和IE11上工作,但它不工作在IE8上设置脚本元素的innerHTML不工作在IE8

当我更改innerHTML时,它只是显示为一个标签。

var contentScript = document.createElement("script"); 
contentScript.setAttribute("id", "contentSCRIPT"); 
contentScript.innerHTML = "alert('test');"; 
document.getElementById("main").appendChild(contentScript); 

@Scott Mermelstein做了这个小提琴来帮助我。 http://jsfiddle.net/BjbAd/

没有人知道如何使它在IE8上工作吗? 请记住,我需要创建contentSCRIPT元素,因为我必须在某些事情之后从页面中删除脚本。

回答

1

我认为你的问题是,innerHTML不打算用于脚本标记。

var contentScript = document.createElement("script"); 
contentScript.setAttribute("id", "contentSCRIPT"); 
contentScript.text = "alert('test');"; 
document.getElementById("main").appendChild(contentScript); 
+0

但它确实在IE10 +,Chrome和Firefox的工作... –

+0

我没有IE10但试图FF,铬,IE8-9一切工作的罚款。我本来以为我需要使用'textContent',但'文本'似乎工作。有时你只需要对待浏览器的限制或让他们去... –

+0

感谢您的建议! –