すべてが折りたためるシンプルなアコーディオンがあります。したがって、アクティブなパネルをクリックすると折りたたまれます。矢印に疑似クラスが割り当てられbefore
てafter
いますが、アクティブなクラスをクリックして折りたたむときに、アクティブなラベルからアクティブなクラスを削除する方法がわかりません。アクティブなクラスは、別のラベルをクリックすると削除されますが、アクティブなラベルをクリックして折りたたむと削除されません。
ここにフィドルがあります。
そして、ここにスクリプトがあります:
$(".accordion > dt").click(function(){
$('.active').removeClass('active');
$(this).addClass('active');
if(false == $(this).next().is(':visible')) {
$('.accordion > dd').slideUp(600);
}
$(this).next().slideToggle(600);
});
いくつかの異なる構成を試しました (たとえば、ステートメントを逆にしてクラスif(false)
を削除するなど)。active
どんな助けでも感謝します。