我正在尝试执行以下操作:
主文档调用iFrame中的一个函数,其 URL来自不同的位置,但我试图调用的Javascript函数从加载到主文档
有没有办法做到这一点?
澄清:
我正在
Permission denied to access property 'js_function'
做的时候
document.getElementById("iframe").contentWindow.js_function(n)
答案 0 :(得分:5)
即使脚本托管在main.com
上,它也会在example.com
的上下文中执行,因此被认为是example.com
的一部分...因此无法访问main.com
窗口中的变量或函数。您可以使用various cross domain communication黑客来解决此问题(或者您可以忽略IE< 8并单独使用window.postMessage
。)
答案 1 :(得分:1)
我明白你在做什么。有一个“黑客”使用了两个iframe(如果我没记错的话)。 黑客和你在这里提到的那些都非常模糊,如果他们被故意锁定我也不会感到惊讶。
我能想到的最好的解决方法是在主窗口(iframe外部)中加载js_function()
的代码。
您能更具体地了解JS代码的作用吗?我可以帮助你做得更好。
答案 2 :(得分:0)
使用easyXDM's RPC功能,它将XDM与RPC结合在一起。 这方面的一个例子可以在这里看到:http://consumer.easyxdm.net/current/example/methods.html