【发布时间】:2013-02-05 19:58:27
【问题描述】:
我对此进行了一些研究,我发现您可以在同一域的情况下使用
document.getElementById('iframe_id').contentWindow.function_name()
我在跨域上试过这个(只是在试验) 它给出了一个跨域错误和[异常:TypeError:对象[对象窗口]的属性'function_name'不是函数]
所以我有一个三部分的问题
a) 如果我无法从子级访问父级(并且我已经在处理此问题,在子级 iframe 中使用另一个 iframe(来自父级域)),这是可以理解的。 但是为什么我们在从父母那里访问孩子时遇到问题,这和拥有一个
不是一回事吗?b) 当我调试时,使用 chrome 检查器工具并尝试查看 document.getElementById('iframe_id').contentWindow 的值,我在它下面看到了我的 function_name,但无法通过 document.getElementById('iframe_id ').contentWindow.function_name()。这是为什么呢?
c) 如何从父级成功调用 iframe 中的 javascript 函数(无需 easyXDM 或任何其他插件)?
更多详情: 我更多的是寻找两种方式的通信,例如,我的父母将在 iframe 中调用一个返回结果的函数,并根据该结果,父母将决定是否要重定向
【问题讨论】:
标签: iframe cross-domain