2014-01-06 125 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

相关问题