我们需要在iframe中添加一个javascript元素(它在同一个web /域中,因此不会附加安全问题)。我们得到了它的工作,但不知道如何填写其标签之间的脚本内容...你会怎么做?
var iframe = document.getElementById('iframeX');
var iframedocument = iframe.contentWindow.document;
var script = iframedocument.createElement('script');
script.setAttribute('type', 'text/javascript');
script.innerText = 'alert(\'hello\')'; //this doesnt work
script.value= 'alert(\'hello\')'; //this doesnt work either
var head = iframedocument.getElementsByTagName("head")[0];
head.appendChild(script);
iframe文档中的所需结果:
<head>
<script type="text/javascript" >
alert('hello');
</script>
</head>
答案 0 :(得分:13)
你有没有尝试过:
script.setAttribute('type', 'text/javascript');
script.innerHTML = 'alert(\'hello\')';
答案 1 :(得分:3)
我遇到了script.innerHTML的问题,因为它在IE8中不起作用 - 。
script.text = 'alert(\'hello\')';
script.text对我来说效果更好。 发现于:Create script tag in IE8