2012-08-24 72 views

回答

4

只需使用.has()方法

$('a').has('.icon-thumbs-up').click(){ // <-- all anchor that has descendant with class .icon-thumbs-up 
    // code here 
}); 

如果元素改變/動態添加..你可以使用委託

$('body').on('click','a', function(){ 
    if($(this).has(".icon-thumbs-up")){ 
     //code here 
    } 
}); 

更換body與加載dom時可用的最接近的父代

+0

這對於動態添加的錨點不起作用,對吧? – ggreiner

+0

太棒了!非常感謝你! –

+0

if($(this).has(「。icon-thumbs-up」)。length){ –

1

編輯:

原來有選擇叫has()它可以幫助你實現你的目標:

$('body').on("click", "a:has(.icon-thumbs-up)", function(){ 
     // do something 
}); 
+0

這是艱難的抨擊,試圖找到最好的1行代碼。雖然謝謝! –