2013-12-06 3 views
3

Я пытаюсь сделать кнопку запуска событий mousedown и mouseup на ExtJS 4, но я не могу найти правильный способ сделать это.события mousedown/mouseup на кнопках ExtJS 4

Я пытался сделать что-то вроде этого на мой контроллер:

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

, но эти события, кажется, не существует.

Каков наилучший способ сделать это, кроме как напрямую обращаться к dom и использовать собственные события javascript?

ответ

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'); 
     } 
    }); 
+0

спасибо! Оно работало завораживающе – MastErAldo

0

Объект Button не имеет событий mousedown или mouseup. Если это все равно вам, вы можете использовать событие.

Смежные вопросы