2016-03-22 27 views
1

ile seçme jquery İçinde '.post-comment-reply' iç içe geçmiş (ilk düzey değil) bulunan tüm .post-comment-replies bulmak istiyorum.Tüm çocuk sınıflarını koşullu

Aşağıdaki kodda, içlerinde .post-comment-reply iç içe olan .post-comment-replies numaralı bağlantıyı da alıyorum. Burada :has() seçici bir ya .post-comment-reply daha soyundan sahiptir .post-comment-replies almak için bize yardımcı olacaktır

var all_replies = $('#post_' + post_id) 
        .find('.post-comment-replies:has(.post-comment-reply)'); 

Sen :has() seçici ile bunu yapabilir

$(document).on('click', '.open-all-post-comments', function (event) { 
    var post_id = $(this).data('pid'); 
    var all_replies = $('#post_' + post_id).find('.post-comment-replies'); 
    all_replies.show(); 
    $(this).closest('.open-all-post-comments-row').hide(); 
}); 
+0

Eğer _ ne demek istiyorsunuz "(ilk değil seviyesi)" _? – guest271314

+0

Demek istediğim, derin iç içe, yani .children() 'gibi bir şey işe yaramayacaktı. –

cevap

2

.

Ve hemen çocuk seçicinin kaçmak için yapmak istiyorsanız, o zaman kullanabilirsiniz,

var all_replies = $('#post_' + post_id) 
        .find('.post-comment-replies > :has(.post-comment-reply)'); 
+0

Bkz. OP'de _ "(ilk seviye değil)." _ – guest271314

+0

OP, ".post-comment-replies" veya ".post-comment-reply" referansını veriyor mu? – guest271314

+1

Aradığım şey bu. Yapabileceğim zaman doğru işaretler. –

İlgili konular