Javascript ExtJS4处理外部事件

Javascript ExtJS4处理外部事件,javascript,events,iframe,extjs,Javascript,Events,Iframe,Extjs,我有一个ExtJS4应用程序,在另一个用Javascript编写的web应用程序中作为iframe运行。我希望以某种方式从外部触发事件,并在框架中捕获它。 也就是说,我想效仿 this.application.fireEvent('myevent', myparams); 我目前有一个解决办法。在我的外部应用程序中,我可以执行以下操作 var w = document.getElementById('myIFRAME').contentWindow; if (w) { w._myFu

我有一个ExtJS4应用程序,在另一个用Javascript编写的web应用程序中作为iframe运行。我希望以某种方式从外部触发事件,并在框架中捕获它。 也就是说,我想效仿

 this.application.fireEvent('myevent', myparams);
我目前有一个解决办法。在我的外部应用程序中,我可以执行以下操作

var w = document.getElementById('myIFRAME').contentWindow;
if (w) {
    w._myFunctionInExtjs(myParam);
}

…调用在我的Ext代码中声明的全局函数。不过,如果通过Ext事件完成,则会更干净,因此,我们非常感谢您的帮助。

要做到这一点,没有简单的方法。使用您的变通方法是我能想到的最佳选择。

我最终使用了我的变通方法并创建了一个全局函数。它所做的一切都会触发Ext事件

//  global function that is used for triggering Ext events 
function _appFireEvent(eventName, objParam) {
    _extApp.fireEvent(eventName, objParam);    
}
现在,从我的外部站点,我可以给它打电话,告诉它我想引发的事件:

var w = document.getElementById('myIFRAME').contentWindow;
if (w) w._appFireEvent('mycustomevent', myparam);
希望这对别人有帮助