The website in the iframe isn't located in the same domain, but both are mine, and I would like to communicate between the iframe
and the parent site. Is it possible?
相关问题
- Views base64 encoded blob in HTML with PHP
- Is there a limit to how many levels you can nest i
- How to toggle on Order in ReactJS
- Carriage Return (ASCII chr 13) is missing from tex
- void before promise syntax
the
window.top
property should be able to give what you need.E.g.
See http://cross-browser.com/talk/inter-frame_comm.html
This library supports HTML5 postMessage and legacy browsers with resize+hash https://github.com/ternarylabs/porthole
Edit: Now in 2014, IE6/7 usage is quite low, IE8 and above all support
postMessage
so I now suggest to just use that.https://developer.mozilla.org/en-US/docs/Web/API/Window.postMessage
With different domains, it is not possible to call methods or access the iframe's content document directly.
You have to use cross-document messaging.
For example in the top window:
and in the iframe:
If you are posting message from iframe to parent window
It must be here, because accepted answer from 2012
In 2018 and modern browsers you can send a custom event from iframe to parent window.
iframe:
parent:
PS: Of course, you can send events in opposite direction same way.