有人可以解释一下document.write到iframe是如何工作的吗?我有以下代码:
<html>
<body>
<iframe id="iframe"></iframe>
<script>
var code = '<scr' + 'ipt>console.log(window.frameElement.contentWindow.document.getElementById("test") );</scr' + 'ipt><div id="test"></div>';
document.getElementById('iframe').contentWindow.document.open();
document.getElementById('iframe').contentWindow.document.write(code);
document.getElementById('iframe').contentWindow.document.close();
</script>
</body>
不知道如何,但标签被写入 iframe 的头部标签,并写入正文。如何从脚本内部获取div 元素传递到 iframe 中。我的示例不起作用,它返回 null。
不幸的是,在现实生活中我不知道 iframe 的 id,我只知道div 的 id。
看我的小提琴:https://jsfiddle.net/85bk3cr6/1/
如果 iframe 与父页面域位于同一域中,则可以访问该 iframe。如果两者在同一个域中,您可以简单地访问 iframe 文档并对其使用写入功能。
网页代码:
<html>
<body>
<iframe id="iframe"></iframe>
</body>
</html>
Js 代码:
document.getElementById("iframe").contentWindow.document.write('x3Cscript type="text/javascript" src="foo.js">x3C/script>')