Web 技术研究所

我一直坚信着,Web 将会成为未来应用程序的主流

IE的iframe变量传递BUG

  根据浏览器的同源策略,iframe的内容与父窗口同域(默认情况也同域)时,它们的内容就允许互相通信。我们可以从iframe上取到其window对象来做进一步操作,但是此处在IE中存在BUG。IE中的iframe中无法从window对象获取到在父窗口直接对其设置的属性。
  这个问题貌似(因为只测试到IE10)存在所有IE版本中。 <iframe id="iframe"></iframe>
<script>
//获取iframe关联的window对象
var w=document.getElementById("iframe").contentWindow;
//对iframe关联的window设置test属性
w.test="次碳酸钴";
//对iframe关联的window添加程序,程序中输出window的test属性
w.document.write("<script>alert(window.test)<\/script>");
</script>

  Chrome和Firefox中都可以从iframe中访问到在父窗给它设置的属性,但是IE中就访问不了。这个设计非常不合理,虽然W3C对此无定义,但是以我的逻辑来看这就是IE的BUG。

  最近琐事一大堆,没啥时间,也想不出什么好题材,只能想到什么写什么啦。也许这些东西现在对大家没啥帮助,但是以后万一遇上了就会用上。另外,Web技术相关的问题时在站内搜索相关的关键字也许会出现比百度上搜索更有价值的东西,至少我的文章是定位明确的。
网名:
54.144.24.*
电子邮箱:
仅用于接收通知
提交 悄悄的告诉你,Ctrl+Enter 可以提交哦
神奇海螺
[查看全部主题]
各类Web技术问题讨论区
发起新主题
本模块采用即时聊天邮件通知的模式
让钛合金F5成为历史吧!
次碳酸钴的技术博客,文章原创,转载请保留原文链接 ^_^