How is it possible for an iframe to access its parents DOM?
If the content of the iframe and its parent have the same domain, you can access the parent pages DOM from the iframe by using parent.document.getElement...
.
However you can't do this cross-domain (not even across different subdomains) as it will result in:
Uncaught DOMException: Blocked a frame with origin "https://example.com" from accessing a cross-origin frame.
How to access parent dom element from child iframe?
Is it possible? Yes. But only if you have permission to do so. Do you control both domains? If not then, no, this is not possible due to cross domain security restrictions.
Assuming you do have control over both sites you could use window.postMessage to facilitate this communication.
See this
Access parent URL from iframe
You're correct. Subdomains are still considered separate domains when using iframes. It's possible to pass messages using postMessage(...)
, but other JS APIs are intentionally made inaccessible.
It's also still possible to get the URL depending on the context. See other answers for more details.
How can we access child Iframe from parent
You can't. The contents of an iframe
cannot be accessed if the parent and child are served from different domains. If they could, it would be possible to wrap any 3rd party page and capture passwords etc from it.
The only way to communicate cross-domain requires you to have control of the iframe contents. If you can add a script then you can use postMessage to send events etc in both directions.
iframe javascript access parent DOM across domains?
Hate to say it but I'm like 99% sure that ain't happening directly because of security.
You can try it out here.
bhh
Access elements of parent window from iframe
I think the problem may be that you are not finding your element because of the "#" in your call to get it:
window.parent.document.getElementById('#target');
You only need the # if you are using jquery. Here it should be:
window.parent.document.getElementById('target');
Access parent window from iframe (cross-domain)
If I were you I would check out window.postMessage. It may do what you want:
For reference see the following:
- MDN - Window.postMessage
- https://stackoverflow.com/a/3076648/296889 - see the Window.postMessage section
Related Topics
How to Save and Restore a File Object in Local Storage
How to Optimize Website for Touch Devices
Restart a Gif Animation Without Reloading the File
What Is the Most Efficient Way to Parse a CSS Color in JavaScript
Show Dynamically Added Navlinks When Added in Bootstrap Navbar
Installing a Local Module Using Npm
Why Does JavaScript Replace Only First Instance When Using Replace
How to Capitalize the First Letter of Each Word in a String Using JavaScript
Official Information on 'Arguments' in Es6 Arrow Functions
How to Call a Js Function Using Onclick Event
Using CSS Modules How to Define More Than One Style Name
How to Reliably Get Screen Width with the Scrollbar
Mutationobserver: New Value in the Format of 'Oldvalue'
Difference Between Throttling and Debouncing a Function