我将iframe设置为同一站点上的src。在iframe页面中,我有一个名为Rack的命名空间,其中包含一个名为app ...
的模块Rack.app = function() {...}();
我可以从外部页面 - 包含iframe的页面访问该Rack.app对象吗?我想做像
这样的事情var iframe = document.getElementById('rackFrame');
iframe.contentWindow.Rack.app.doSomething();
但这不起作用,我没有看到Rack对象。
答案 0 :(得分:0)
你可以通过在调用命名空间的命名空间外调用iframe中的函数来破解它吗?
var iframe = document.getElementById('rackFrame');
iframe.contentWindow.rackTrigger();
然后在iframe中有一个函数:
function rackTrigger(){
Rack.app.doSomething();
}
如果您希望触发一个功能,那么这不是最优雅的解决方案,但如果您想对iframe进行多项更改,则不是更清晰。