listener方法和handler方法的區別在文檔中的說明的太玄乎了,看不懂git
listeners監聽可以對一個click Event事件添加任意多個的事件響應處理函數github
而handler處理只可以經過處理函數一次處理點擊響應api
Ext.create('Ext.Button', { text : 'Dynamic Handler Button', renderTo: Ext.getBody(), handler : function() { // this button will spit out a different number every time you click it. // so firstly we must check if that number is already set: if (this.clickCount) { // looks like the property is already set, so lets just add 1 to that number and alert the user this.clickCount++; alert('You have clicked the button "' + this.clickCount + '" times.\n\nTry clicking it again..'); } else { // if the clickCount property is not set, we will set it and alert the user this.clickCount = 1; alert('You just clicked the button for the first time!\n\nTry pressing it again..'); } } });
new Ext.panel.Panel({ width: 400, height: 200, dockedItems: [{ xtype: 'toolbar' }], listeners: { click: { element: 'el', //bind to the underlying el property on the panel fn: function(){ console.log('click el'); } }, dblclick: { element: 'body', //bind to the underlying body property on the panel fn: function(){ console.log('dblclick body'); } } } });
-------------------------------------------------------------------------------------------------------------------------------------------函數
官方說法能夠點擊此處this