2016-10-03 73 views
0
<div class="card-block">something</div> 
<div class="card-block">something</div> 
<div class="card-block">something</div> 
<div class="card-block">something</div> 
<div class="card-block">something</div> 

所以,我在我的代碼中有這樣的東西,我想知道如何添加一個點擊函數來抓取被點擊的特定div?如何使用jQuery中有很多類的點擊功能?

我想這會工作$('.card-block').on('click', function() { "do something" });

好了,我想我忘了提我的DOM正在動態地建立,並且它不斷地被動態地在用戶每次點擊一個按鈕,或調整窗口大小時建造的。

+0

使用'this'關鍵字來引用引發事件的元素 –

+0

你有什麼應該工作,除非DOM正在修建動態 –

+0

定義:'不work' – Jamiec

回答

1
$('.card-block').on('click', function() { var div = $(this); }); 

您可以使用此關鍵字來獲得點擊div。在你的元素被動態地添加的情況下,然後使用此代碼:

$('body').on('click', '.card-block', function() { var div = $(this); }); 
0

您的代碼應該工作,如果它不它可能意味着你結合的Click事件當元素現在還沒有。 嘗試將事件委託給主體:

$('body').on('click', '.card-block', function(e) { 
    var your_div = $(this); 
}); 
0

使用此選項。它還將附加click事件dynamically loaded元素card-block

$(document).on('click','.card-block', function() { 
    var x = $(this);//It will be the appropriate div 
});