2014-01-06 234 views
1

我如何獲得一個DOM元素,並附加一個事件onClick?我想這個代碼,但它不工作:如何將點擊處理程序附加到DOM元素

<div> 
    <h1 id="some_id"> 
     click here 
    </h1> 
</div> 

的JavaScript:

Ext.onReady(function() { 
    if(Ext.getDom('some_id')) 
    { 
     var elDom = Ext.getDom('some_id'); 

     elDom.on('click', function(){ 

      Ext.Msg.alert('Status', 'Already get the element from the dom'); 
     }); 
    } 
    }); 

小提琴:https://fiddle.sencha.com/#fiddle/2fl

回答

1

另一種方式來做到這一點是讓Ext.dom.Element而不是實際的DOM節點。這將允許您使用.on()。這是通過使用Ext.get()代替Ext.getDom()完成。

var elDom = Ext.get('some_id'); 
if(elDom) { 
    elDom.on('click', function() { 
     Ext.Msg.alert('Status', 'Already get the element from the dom'); 
    }); 
} 
+0

建議更改名稱,'elDom'沒有意義,因爲它不是指DOM元素,而是元素包裝類。 –

+0

表示同意,但我只是想有太大變化,所以重要的變化是比較明顯的。 – forgivenson

相關問題