2014-06-10 37 views
8

Bir div içindeki bir bölümü göstermek/gizlemek için bir komut dosyası yazıyorum.jQuery "this" öğesini ve CSS seçiciyi mi kullanıyorsunuz?

<div class="rates"> 
    <h2>Rates</h2> 
    <div class="expand"> 
     <p>Text in here is hidden by default.</p> 
    </div> 
</div> 
<div class="hours"> 
    <h2>Hours</h2> 
    <div class="expand"> 
     <p>Text in here is hidden by default.</p> 
    </div> 
</div> 
<div class="otherinfo"> 
    <h2>Other Info</h2> 
    <div class="expand"> 
     <p>Text in here is hidden by default.</p> 
    </div> 
</div> 

: Burada

$('.rates, .hours, .otherinfo').click(function() { 
    $('.expand').toggle(); 
}); 

HTML var: Ben burada şu anda var ne gizli bölümleri ile bu div 3. var ama hepsi 3.

kontrol etmek için bir işlevi kullanmak umuyordum ve CSS:

.expand { 
    display:none; 
} 

Açıkçası, bu size herhangi tıkladığınızda div tüm 3 div "genişletmek" gösterir onlar. this'u seçiciye dahil etmenin bir yolu var mı? this'.expand' gibi bir şey?

Teşekkürler!

+0

tıkladığınız var sadece öğeyi genişletmek için mi çalışıyorsunuz? –

+0

Biraz bağlam verin. İlgili HTML işaretini lütfen göster. Bakın: http://stackoverflow.com/help/mcve – Sparky

+0

@ user3388636 yanıt benim için çalıştı, ancak HTML'yi başkalarının referansı için ekleyeceğim. Teşekkürler! – APAD1

cevap

19

$(this).find('.expand').toggle()

+0

Harika çalışıyor, teşekkürler! – APAD1

+9

$ (". Expand", bu) kısaca – GillesC

1

Daha iyi yanıt için bir keman eklemelisiniz. Ama bunun gibi bir şey işe yaramalı.

$("#something").click(function(){$(this).children("section").toggle();}); 
İlgili konular