2016-03-31 17 views
0

ben de aynı üst div ile sınıf bilgi ile div yüksekliğini değiştirmek için çalışıyorum bir etiketi tıklayarak On BujQuery kardeşler yöntem ve set yüksekliği

<div> 
    <div class="logo"></div> 
    <div class="description"></div> 
    <div class="learnMore"><a class="learn-more" href="#path">Learn More</a>      
</div> 
<div> 
    <div class="logo"></div> 
    <div class="description"></div> 
    <div class="learnMore"><a class="learn-more" href="#path">Learn More</a>      
</div> 

gibi DOM yapıya sahip

$('.learn-more').click(function() { 
    $(this).siblings('.description').animate({height: '90px'}, 200); 
} 

Bu her zaman başarısız oluyor.

$('.description').animate({height: '90px'}, 200); 

Bu işleri ama bu sınıf adı onun kardeş değil sadece bir ile tüm div için yüksekliğini değiştirir.

Herhangi bir öneriniz var mı?

+2

HTML'nize – Turnip

+0

hiçbir '.show-more' öğesi' yerine '.siblings()' 'ait .next() denedim yoktur? – zer00ne

+2

Ayrıca, '.learnMore' div'inizi – Turnip

cevap

3

İlk çözümünüzde .show-more yerine .learn-more kullanmak mı istiyorsunuz? Bu durumda, açıklama div bağlantısının bir etiketin kardeşi olmadığını unutmayın; Ebeveyninin kardeşi. Bunu düzeltmek için bir .parent() çağrı ekleyin. Yani

$('.show-more').click(function() { 
     $(this).parent().siblings('.description').animate({height: '90px'}, 200); 
    } 
+0

Evet. Önceki yazımda yazım hatası vardı. Seçiciyi DOM ile eşleştirmek için jquery'de güncelledim. Ve ebeveynleri işaretlediğiniz için teşekkürler. Bu sorunu çözdüm. – user3861559