我需要在同一域的两个 iframe 之间进行通信,这两个 iframe 位于我无法控制的不同域的父页面内。
这是一个 Facebook 应用程序,基本布局是这样的
apps.facebook.com/myapp
L iframe1 (src='mysite.com/foo')
l iframe2(src='mysite.com/bar')
我需要frame1与frame2对话,但在Opera中我无法访问window.parent.frames['frame2'] 执行通常的跨域方法(例如更新location.hash)
是否有其他方法可以在 Opera 中实现此目的?
感谢您提前提供的帮助
最佳答案
您是否尝试过使用 HTML5 web messaging 。目前最新版本的浏览器都很好地支持它。
iframe.contentWindow.postMessage('Your message','http://mysite.com');
postMessage
属性需要来源 http://mysite.com
。
关于Opera 中的跨域 iframe 通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2248950/