我在我的网页中嵌入了来自不同域的iframe . 是否可以通过某种方式从父页面访问其DOM?现在它说:
未捕获的抛出:DOMException:无法读取从'HTMLIFrameElement'的'contentDocument'属性:访问一个跨来源帧阻止与原点的帧“http://localhost:63342” .
我希望添加指令
<?php header('Access-Control-Allow-Origin: *'); ?>
到iframe页面会有所帮助,但事实并非如此 . 这两个域现在都位于我的localhost上,但运行的是不同的服务器 . 那么有一些有效的解决方案吗?请注意,我只需要一些iframe的元素的访问,这不是关于postMessages,等的WebSockets
1 回答
直接访问是不可能的
postMessage
可以达到同样的最终目标 .你只需要移动它访问DOM的iframe中的页面的代码,然后用
postMessage
从父窗口问这个页面来运行它 . 该网页便连载父窗口需要一个字符串的任何数据,并使用postMessage
把它送回来 .