2015-12-10 41 views
0

單擊動態生成圖像時如何觸發事件?單擊動態生成圖像時的觸發事件

<body> 
    <!-- this img element is dynamically generated after page load --> 
    <img class="youtube-thumb" src="//i.ytimg.com/vi/x-4KLOsfkHw/hqdefault.jpg"> 
</body> 

我想這會工作:

$('body').delegate('.youtube-thumb').on('click', function(){ 
    console.log('hi') 
}) 

但是當我點擊任何地方body這將觸發事件。我究竟做錯了什麼?

回答

3

你的delegate()方法的使用是不正確,試試這個:

$('body').delegate('.youtube-thumb', 'click', function(){ 
    console.log('hi') 
}); 

這就是說,你應該使用on(),而不是作爲delegate()被認爲是過時的。試試這個:

$('body').on('click', '.youtube-thumb', function(){ 
    console.log('hi') 
}); 
+0

太棒了,謝謝 –

+0

沒問題,很樂意幫忙。 –

0

這應該像下面這樣。不需要功能delegate()

$('body').on('click', '.youtube-thumb', function(){ 
    console.log('hi') 
}) 
相關問題