当主要Window
想向子 iframe 发送消息时 -
它将孩子的 Iframe url 设置为其当前的url+ 哈希(表示数据)。
但是 iframe 将如何获取新数据?
我们有 4 个选项:( 我不是在谈论新的 api,例如postMessaage
也不是 XDM 库)
孩子正在轮询新的哈希(setTimeout)
主窗口可以调整 iframe 的大小(iframe 必须注册
onResize
)可以在 iframe 上使用 OnHashChange 事件
销毁/创建代理 Iframe,它使用“onload”将 msg(javascript 函数!)发送到它的“SameDomainIframe”
parent.frames['samedonain'].sendData(...)
我的问题来了:(关于选项#2(调整大小事件)):
根据这篇文章:
在 Firefox、Opera、Google Chrome 和 Safari 中,onresize 事件仅在浏览器窗口大小改变时触发。在 Internet Explorer 中,onresize 事件会在浏览器窗口或元素的大小发生更改时触发。
问题 :
这个调整大小的东西有没有跨浏览器的解决方案?
我不希望用户调整浏览器大小而 iframe 将重新读取数据的情况!
我希望仅在向 iframe 发送消息并手动调整大小时读取数据