ExtJS4:使用Ext.draw停止事件冒泡

时间:2011-05-14 13:37:17

标签: extjs raphael extjs4

我在使用ExtJS4及其绘图组件冒泡时遇到了一些困难:

drawComponent.on('click', function(){
    var sprite = Ext.create('Ext.draw.Sprite', {
        type: 'circle',
        fill: '#79BB3F',
        stroke: '#000000',
        'stroke-width': 1,
        radius: 100,
        x: 100,
        y: 100,
        surface: this.surface,
        listeners: {
            'click': function(el,e){
                console.log('clicked');
                e.stopPropagation();
            }
        }
    });
    sprite.show(true);
});

点击drawComponent时,会绘制一个圆圈。点击圈子时,这应仅触发圈子的clickHandler,而不是drawComponent

知道我的代码有什么问题吗? e.stopPropagation()应该停止事件泡沫。

谢谢, Chielus

1 个答案:

答案 0 :(得分:0)

使用addManagedListeners方法而非listeners属性添加点击事件。

也应删除组件上的click事件。

<强>参考