0

私は Joomla サイトを開発しており、エディターが WYSIWYG エディターに配置する H3 見出しの位置に従って、カテゴリーの説明アコーディオンを作成しています。

これまでのところ、私はこの単純な機能を持っています (明らかに、少し整理する必要があります):

jQuery('.category-desc h3').addClass('accordionheading').nextUntil('.category-desc h3').hide();
jQuery('.category-desc h3').click(function(){
    jQuery(this).addClass('activeaccordionheading').nextUntil('.category-desc h3').slideDown();
    jQuery(this).removeClass('activeaccordionheading').siblings('h3').nextUntil('.category-desc h3').slideUp();
});

「activeaccordionheading」クラスがクリックされたときに関連する h3 に追加されていないことを除いて、すべてが正常に機能します。理由はありますか?

フィドル

編集...

小学生の間違い!私がやろうとしていたのは、クラスを兄弟から削除することだったときに、追加するとすぐにクラスを削除していました!

jQuery(this).removeClass('activeaccordionheading').siblings('h3').etc...

する必要があります

jQuery(this).siblings('h3').removeClass('activeaccordionheading').etc...
4

2 に答える 2

1

次のコード行を使用して、クラスを追加した直後にそのクラスを削除します。

jQuery(this).removeClass('activeaccordionheading').siblings('h3').nextUntil('.category-desc h3').slideUp();
于 2013-09-27T13:01:08.217 に答える