2014-06-10 25 views
8

我正在編寫一個腳本來顯示/隱藏div中的一個部分。我有這方面的div隱藏部分3,但希望用一個函數來控制所有3使用jQuery「this」加上一個CSS選擇器?

這就是我現在所擁有的:

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

這裏的HTML:

<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> 

和CSS:

.expand { 
    display:none; 
} 

顯然,這顯示了「擴大」分區的div的所有3,當你點擊任何的他們。有沒有辦法將this納入選擇器。像this'.expand'

謝謝!

+0

你試圖擴大隻得到了點擊的元素? –

+0

給它一些上下文。請顯示相應的HTML標記。請參閱:http://stackoverflow.com/help/mcve – Sparky

+0

@ user3388636響應爲我工作,但我將添加HTML給其他人蔘考。謝謝! – APAD1

回答

19

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

+0

工作很好,謝謝! – APAD1

+9

$(「。expand」,簡稱) – GillesC

1

你應該添加一個提琴更好的答案。但是像這樣的東西應該工作。

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