已经有一些类似的问题,但它们往往涉及子女与父母的关系。
另一方面,我希望能够获得IFrame的DOM的一些属性。我不想操纵任何东西。我只希望能够读取属性或DOM节点。如属性或内容。
恐怕这是不可能的,除非我使用window.postMessage
之类的东西。与此解决方案一样合理的是,它基于事件侦听器。这需要在IFrame内部定义一个侦听器,这意味着要更改IFrame的代码。我想避免那样。
如果您想进行跨域Ajax调用,您可以(如果您也有访问权限)设置目标服务器的标头以允许:
Access-Control-Allow-Headers:X-Requested-With
Access-Control-Allow-Methods:POST,GET,DELETE,PUT,OPTIONS
Access-Control-Allow-Origin:*
有趣的是,这并不适用于与IFrame的通信。所以我的问题是:
(如何)我可以访问跨域IFrame的DOM属性?
我都记不清我遇到过多少次这样的问题了。
请阅读关于规避同源策略的社区wiki,以找到适合您的解决方案。这是我在网上找到的最好的同源资源之一。
yayQuery的Alex Sexton还制作了一个关于不同方法的视频
我想试试http://easyxdm.net/wp/使用过很多次,非常容易使用,在旧的浏览器中也能工作