【问题标题】:Event listeners on the IFrame with ExtJS4.1.2带有 ExtJS4.1.2 的 IFrame 上的事件侦听器
【发布时间】:2012-12-05 01:10:41
【问题描述】:

我正在使用“uxiframe”组件将单独的应用程序加载到模式窗口(ExtJS4.1x)中。 跨域问题显然不允许我访问 IFrame 内容的任何部分。但是,IFrame 中的同一个域应用程序的 Document 可以通过 iframe.getDoc() 从父级访问

问题是这样的:有没有办法让我在父模式窗口的 IFrame 内的元素上设置 DOM 侦听器?

谢谢,一个简单的例子将不胜感激。

更新感谢@lontiviero 的提示让我开始。这是我最终得到的结果:

var bodyEl=Ext.get(iframe.getDoc().body);  //this gives me an Ext.dom.Element object 
bodyEl.on('click',
          function(event, el,opts){
             console.log("<p> clicked");
          },
          this, //scope
          {delegate:'p'} //options
);

【问题讨论】:

    标签: iframe extjs extjs4


    【解决方案1】:

    使用此代码,我能够将事件附加到 iframe 的正文元素。

    Ext.EventManager.on(iframe.contentDocument.body, 'mouseover', function() {
        alert('hello');
    });
    

    在 jsfiddle 中看看:http://jsfiddle.net/XApQU/

    【讨论】:

    • 看起来很有希望,正在测试中。
    猜你喜欢
    • 2010-11-26
    • 1970-01-01
    • 1970-01-01
    • 2016-08-11
    • 1970-01-01
    • 2020-05-24
    • 1970-01-01
    • 2015-03-24
    • 1970-01-01
    相关资源
    最近更新 更多