访问iframe src中定义的全局javascript对象

访问iframe src中定义的全局javascript对象,javascript,iframe,Javascript,Iframe,我在同一个站点上将iframe设置为src。在iframe页面中,我有一个名为Rack的命名空间,其中包含一个名为app Rack.app = function() {...}(); 我可以从外部页面(包含iframe的页面)访问Rack.app对象吗?我想做一些像 var iframe = document.getElementById('rackFrame'); iframe.contentWindow.Rack.app.doSomething(); 但是这不起作用,我看不到Rack对象

我在同一个站点上将iframe设置为src。在iframe页面中,我有一个名为Rack的命名空间,其中包含一个名为app

Rack.app = function() {...}();
我可以从外部页面(包含iframe的页面)访问Rack.app对象吗?我想做一些像

var iframe = document.getElementById('rackFrame');
iframe.contentWindow.Rack.app.doSomething();

但是这不起作用,我看不到Rack对象。

你能通过在调用名称空间的名称空间之外的iframe中调用函数来破解它吗

var iframe=document.getElementById('rackFrame')
iframe.contentWindow.rackTrigger()

然后在iframe中有一个函数:

函数rackTrigger(){
Rack.app.doSomething();
}


如果您希望触发一个函数,那么这不是最优雅的解决方案,但是如果您希望在iframe上进行许多更改,那么它会更干净。

干杯,但由于某些原因,我的父页面也无法看到iframe.contentWindow.rackTrigger(当然,一旦我添加了它)