我正试图在ExtJS 4上按下一个按钮来触发mousedown和mouseup事件,但我找不到合适的方法来执行此操作。
我试图在我的控制器上做这样的事情:
init: function()
{
this.control(
{
'button[itemId="pttButton"]':
{
mousedown: doSomething,
mouseUp: doSomethingElse
}
});
}
但这些事件似乎并不存在。
除了直接访问dom并使用原生javascript事件之外,最好的方法是什么?
答案 0 :(得分:4)
因为按钮没有mousedown
和mouseup
个事件,所以最简单的方法是在按钮组件的元素上添加此事件的侦听器。表示组件的元素,您可以通过组件的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');
}
});
答案 1 :(得分:0)
Button对象没有mousedown或mouseup事件。如果它与你完全相同,你可以使用点击事件。