extjs 4.0委托给鼠标

时间:2016-02-22 13:43:32

标签: extjs extjs4

我想将mouseover / mouseout事件委托给我的父节点。

当我转到 #mycontent>时,在下面的代码中span.bannerContent ,我应该将鼠标悬停事件委托给父母子项 img#bannerImage

如何使用extjs实现

HTML code:

<div>  
  <img id="bannerImage" />
<div id="mycontent"> 
    <span> my dummy content </span>
</div>

EXTJS代码

items : [{
            xtype: 'image',
            id:'bannerview1',
            src: 'images/homePage/banner-1.jpg',
            height: 500,
            width: 1240,
            listeners: {
                el: {
                    click: function(el,src) {
                    var link =src.src;
                    if(link.indexOf("banner-1.jpg")!= -1){
                        window.open("main");
                     }                   
                    }
                }
            }
           },
           {
                xtype: 'box',
                id:'label',                      
                html: '<span class="bannerContent"></span> ',
                listeners: {
                     **el: {
                       mouseover:function(){

                       },
                       mouseout:function(){

                       }**
                     }
                }   
            }
    ]

1 个答案:

答案 0 :(得分:0)

通常你可以使用relayEvent将事件传递给任何observable,但问题是,Ext.dom.Element是不可观察的(不知道fireEvent方法)。所以要么你可以听父div上的鼠标事件,也可以在盒子事件上挂钩轮播,或者你坚持转发事件,扩展Ext.Img以便它自己触发mouseout和mouseover事件(而不是它的'el')然后钩子你的旋转木马就此类活动而言。

ActiveRecord::Base.include_root_in_json = true

就我个人而言,我认为这样的解决方案并不是非常简单。