ExtJS 4按钮上的mousedown/mouseup事件

mousedown / mouseup events on ExtJS 4 buttons

本文关键字:mouseup 事件 mousedown 按钮 ExtJS      更新时间:2024-04-19

我正试图让一个按钮在ExtJS 4上触发mousedown和mouseup事件,但我找不到合适的方法。

我试图在我的控制器上做这样的事情:

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

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

除了直接访问dom和使用本地Javascript事件之外,最好的方法是什么?

因为按钮并没有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');
        }
    });
Button对象没有mousedown或mouseup事件。如果一切都一样,您可以使用单击事件。