【发布时间】:2014-01-01 20:55:33
【问题描述】:
我在 jQuery 中动态创建一个对象元素,以呈现一些内容。它适用于除 IE8 以外的所有浏览器。
代码:
j$(document).ready(function(){
j$('.objContainer').html(j$('<object>').attr(
{'data':'http://www.stackoverflow.com',
'type':'text/html'}));
});
执行后创建的 HTML 结构(在 IE8 中):
<object type="text/html"></object>
在其他浏览器[IE9、Firefox、Chrome]:
<object data="http://www.stackoverflow.com" type="text/html"></object>
有什么解决办法吗?
【问题讨论】:
-
我怀疑这是由于 IE8 中的同源策略限制。来自MSDN:在 IE9 标准模式下,允许对象元素从其他域加载内容。但是,在 IE8 标准模式下,这是不允许的。
-
只是一个猜测,但它是否与 stackoverflow.com 使用 X-Frame-Options 来防止嵌入以及 IE 对此做出奇怪的反应有关?尝试嵌入example.iana.org
标签: javascript jquery html internet-explorer internet-explorer-8