请考虑以下两个域:domain1.com 和 domain2。
从 domain1 我打开一个指向 domain2 的 iframe。
现在,我希望这些人能够相互通信,我已经通过在两个域上应用哈希更改事件侦听器成功地实现了这一点。
这样,如果 domain2 使用新的哈希调用 parent.location,父窗口 (domain1) 中的哈希就会触发。此外,如果我从父级将其 src 属性更改为新哈希,则会在 iframe 中触发哈希更改事件。
这很好用!
麻烦来了:
浏览器中的后退和前进功能变得混乱。简单地说,通过创建两个哈希实例,浏览器后退按钮必须单击两次才能更改父哈希,因为它必须首先循环遍历 iframe 的哈希。
如何在不搞砸历史对象的情况下与跨域 iframe 2 方式通信?
谢谢!