有没有办法从父级调用IFrame内部的JavaScript函数?
答案 0 :(得分:8)
这取决于IFrame的内容。如果内容来自另一个域,那么你运气不好,因为大多数现代浏览器已经关闭了跨站点攻击的漏洞。
但是,如果内容来自SAME域,那么您可以使用它,因为它只是IFrame window
对象上的另一种方法。如果我没记错的话,你可以使用像window.frames["_your_IFrame_ID_"].window.functionOrMethodName()
这样的东西。
答案 1 :(得分:0)
您希望在哪里调用该函数?而且,你想要它做什么?
当你打电话时,你想要它 1)操作容器页面中的项目? 2)操作IFrame本身的项目 3)是容器和框架都可访问的通用函数。
据我所知
1)不可能
2)鉴于Paulo Santos的回答,可能是可能的。
3)应该将函数放在一个公共文件中。
答案 2 :(得分:0)
据我所知,这是相当复杂的。您可以设置跨域通信渠道。对于Facebook应用程序this kind of thing是很常见的。 当然,这只适用于两个网站一起玩的时候。