我正在設計一個標題模塊,單擊時顯示/隱藏標題。我想在動畫完成後更改觸發切換的按鈕的文本。針對Jquery的多個類的單個實例
當按鈕的一個實例存在時,下面的工作方式會存在,但如果存在更多,則文本不會更改。 我沒有紮實的把握在DOM中移動,我如何使用$(this)
來定位活動按鈕?
編輯:對於像我這樣的其他初學者,請注意這是一個JS範圍問題,而不是DOM問題。
JS:
$('.btn').click(function(){
$(this).siblings('.caption').animate({
height: 'toggle'
}, 200, function() {
// After animation is done:
if($('.btn').text() == 'Hide'){
$('.btn').text('Show');
} else {
$('.btn').text('Hide');
}
});
});
HTML:
<div class="container">
<ul class="slides">
<li>...</li>
</ul>
<div class="caption">
<p class="txt"><span class="details">...</span></p>
</div>
<div class="btn">
<p class="txt">Hide</p>
</div>
</div>
將不勝感激快速解釋,我在做什麼錯。謝謝!