I have a iframe (in my domain), that iframe has a file iframe.js
.
My parent document has a file parent.js
.
I need to call a function that is in parent.js
, from a function that is in iframe.js
.
I tried doing window.parent.myfunction()
this function is in the parent.js
file.
But, it didn't work. Only when I put the function on the parent page (I mean in the HTML), then it worked.
Any idea how to get this to work?
I know this is an old question, but in case the accepted answer doesn't work (it didn't work for me) you could do this inside parent.js
Now from the iframe you can call myfunction() like you initially wanted
Window.postMessage()
method safely enablescross-origin
communication.If you have access to parent page then any data can be passed as well as any parent method can be called directly from
Iframe
.Parent page:
Iframe code:
References:
Try just
parent.myfunction()
. Also be 100% sure that the parent.js is included in your parent document.