ExtJS 4个按钮上的mousedown / mouseup事件

问题描述 投票:3回答:2

我试图使按钮触发ExtJS 4上的mousedown和mouseup事件,但是我找不到正确的方法来执行此操作。

我正在尝试在控制器上执行以下操作:

init: function()
{
    this.control(
    {
       'button[itemId="pttButton"]': 
       {
          mousedown: doSomething,
          mouseUp:   doSomethingElse
       }
    });
}

但是这些事件似乎不存在。

除了直接访问dom并使用本机Javascript事件以外,执行此操作的最佳方法是什么?

javascript extjs extjs4 mouseevent dom-events
2个回答
4
投票

因为按钮没有mousedownmouseup事件,所以最简单的方法是在按钮组件的元素上添加此事件的侦听器。您可以通过组件的getEl()方法获得代表组件的元素。

    var btn = Ext.create('Ext.Button', {
        text: 'Click me',
        renderTo: Ext.getBody()

    });

    btn.mon(btn.getEl(), {
        mousedown: function() {
            console.log('down');
        },
        mouseup: function() {
            console.log('up');
        }
    });

0
投票

Button对象没有mousedown或mouseup事件。如果对您来说都一样,则可以使用click事件。

© www.soinside.com 2019 - 2024. All rights reserved.