slidetoggle
とslideDown
を使用してdiv要素の表示/非表示を試みています。その完璧に動作します。 今私がしようとしているのは、表示されているdivのみに対してaddClass
'visible-divs'と表示され、非表示になるときはremoveClass
になります。jqueryクラスの追加と削除
問題は、クラスが正常に追加されましたが、そのクラスを非表示にする場合は、クラスslides up
を削除しません。私は間違って何をしていますか?これが機能するために
$(".OffersContainer > div:gt(0)").hide();
$(".OffersContainer > span").click(function() {
this.clickCount = (this.clickCount || 0) + 1
var command = this.clickCount % 3 === 0 ? 'slideToggle' : 'slideDown';
$(this).siblings(this.clickCount % 3 === 1 ? "div:lt(3)" : "div:gt(0)")[command]();
$('.pan-box').filter(':visible').addClass("visible-divs");
$('.pan-box').filter(':hidden').removeClass("visible-divs");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="OffersContainer">
<div class='pan-box'>A</div>
<div class='pan-box'>B</div>
<div class='pan-box'>C</div>
<div class='pan-box'>D</div>
<div class='pan-box'>E</div>
<span>Show more</span>
</div>
OP – guradio