jquery 动态 iframe - !document.write 和 IE 问题

标签 jquery internet-explorer iframe append document.write

为什么这在所有浏览器中都有效 - 除了 IE:

var $iframe = $("<iframe name=" + strFrameName +"/>");
var $doc = $iframe.contents();
$doc.find("head").append("<link type='text/css' rel='stylesheet' href='" + opt.loadCSS + "'>");

但是,如果我在 document.write 中使用非 jquery 对象,它在 IE 中可以正常工作吗?

var $iframe = $("<iframe name=" + strFrameName +"/>");
var doc = $iframe[0].contentWindow.document;
doc.write("<link type='text/css' rel='stylesheet' href='" + opt.loadCSS + "'>");

我重新设计了一个插件,并想重写它,这样它就不会使用 document.write

但是,现在 iframe 已创建,但在 IE 中 head/body 仍为空。

查看原始版本的 fiddle (document.write): http://jsfiddle.net/jasonday/Tx4Uv/

和更新尝试使用.append而不是.write的 fiddle : http://jsfiddle.net/jasonday/Tx4Uv/4/

最佳答案

已修复。

我添加了 2 毫秒的 setTimeout,以允许 iframe 在 append 到 head 和 body 之前完全渲染(主要针对 IE)。

关于jquery 动态 iframe - !document.write 和 IE 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13318143/

相关文章:

html - 使用本地主机应用程序的 iframe

php - 如何使用 Woocommerce WC_AJAX 类

internet-explorer - 在 IE8 中使用 angularJS 在 compileNodes 中进行无限递归

html - CSS Browser hack for ≥ IE10, Index was outside the bounds of the array

ruby-on-rails - (Ruby on Rails) 页面标题以文本/javascript 的形式出现,当它不应该的时候

javascript - 从 iframe 内访问父 Javascript 函数?

javascript - Jquery 中没有从 php json_encode 接收到数据

java - 用于 x-www-form-urlencoded 类型请求的 Spring bean

jquery - 固定 div 的 css 垂直滚动

Python-selenium iframe 切换似乎不起作用