动态放置在 iframe 中的脚本不会执行
Script dynamically placed inside an iframe doesn't execute
>上下文
我在页面上有一个 iframe,我在其中动态插入一个脚本,以便脚本将被沙盒化并且无法影响外页。我希望脚本执行,但它没有。这是为什么呢?
法典
var iframe = document.getElementsById('/* ... */').contentWindow.document;
var script = '<script>document.write("foo");</script>';
iframe.body.innerHTML = script;
当我这样做时,当我检查 DOM 时,我可以看到脚本元素被正确插入到 iframe 的主体中。但脚本永远不会执行。如果我打开开发工具并转到"控制台"选项卡并切换到 iframe 的上下文并键入document.write('foo');
我会看到foo
显示在 iframe 中。但是,为什么插入脚本后不执行呢?
尝试这样的事情(如果使用jQuery)...
$('#iframe_').contents().find('body').append("My Js Code");
相关文章:
- 在服务器端脚本执行后关闭选项卡
- 脚本执行多次
- 根据屏幕大小阻止脚本执行
- 检测TAB键并使脚本执行成为条件
- 脚本执行,但代码隐藏不执行
- 如何使用应用程序脚本执行API从谷歌工作表中提取数据
- 为什么设置window.location.htm不会停止脚本执行
- document.write(“anything”) 不会在 Internet Explorer 中作为外部脚本执行
- Extjs4 和 IE8 :选项卡上的 beforeclose 事件会抛出“无法从释放的脚本执行代码”
- 具有 asyc 属性的脚本仍会阻止其他脚本执行
- 如何在特定行暂停 JS 脚本执行
- JavaScript - 在高负载脚本执行之前绘制 html-mask
- 重新加载 Chrome 扩展程序内容脚本执行环境
- 将脚本执行保留在新打开的页面中
- 在脚本执行结束时关闭弹出窗口
- JavaScript 脚本执行时间太长.获取脚本需要太长时间提示
- 为什么 url 中的“#”会阻止 jquery 脚本执行
- 脚本执行两次,但时间戳相同
- Javascript setTimeout 会停止其他脚本执行吗?
- jQuery 在单击事件中的 if 条件后停止脚本执行