如何从 iframe 中调用 javascript 函数?
How can I call a javascript function from within iframe?
我读过,我知道同源策略会阻止 iframe 的 DOM 访问父 window 的 DOM 反之亦然,如果在不同的域上。
但是,在这种情况下,我至少也对父 DOM 有一定的控制权(它仍然在不同的域中)。我正在开发一个位于 iframe 中的网站,但也会要求用户在他们的页面头部添加一些 javascript。
鉴于此,我是否可以在包含 javascript 的父级中公开一个 javascript 函数?
我很高兴地说,HTML5 似乎通过 window.postMessage
:
解决了这个问题
https://developer.mozilla.org/en-US/docs/Web/API/window.postMessage
根据评论中 link Naeem 的说法,某些浏览器可能存在一些兼容性问题,但可以克服。
我读过,我知道同源策略会阻止 iframe 的 DOM 访问父 window 的 DOM 反之亦然,如果在不同的域上。
但是,在这种情况下,我至少也对父 DOM 有一定的控制权(它仍然在不同的域中)。我正在开发一个位于 iframe 中的网站,但也会要求用户在他们的页面头部添加一些 javascript。
鉴于此,我是否可以在包含 javascript 的父级中公开一个 javascript 函数?
我很高兴地说,HTML5 似乎通过 window.postMessage
:
https://developer.mozilla.org/en-US/docs/Web/API/window.postMessage
根据评论中 link Naeem 的说法,某些浏览器可能存在一些兼容性问题,但可以克服。