上下文
我在页面上有一个iframe,并且我在其中动态插入一个脚本,以便脚本将被沙箱化并且无法影响外部页面。我期待脚本执行,但事实并非如此。这是为什么?
代码
var iframe = document.getElementsById('/* ... */').contentWindow.document;
var script = '<script>document.write("foo");</script>';
iframe.body.innerHTML = script;
当我这样做时,我可以看到在检查DOM时脚本元素被正确插入到iframe的主体中。但是脚本永远不会执行。如果我打开开发工具并转到控制台标签并切换到iframe的上下文并输入document.write('foo');
,我会在iframe中看到foo
。但是,为什么脚本一旦插入就不会执行?
答案 0 :(得分:0)
尝试这样的事情(如果使用jQuery)......
$('#iframe_').contents().find('body').append("My Js Code");