2

これで、すべてのリスト要素を明らかにするスライド オープン ul ができました。次に、クリックされたタイトル バーに選択済みの状態を追加し、閉じたときにその状態を削除します...

ULの上のdivには.regionHeaderのクラスがあります

これがマークアップの例です

<div class="regionHeader">title of the region</div>
<ul class="region"><li>the region i'm hiding/showing</li></ul>

ここにJavaScriptがあります

var stockists = {

start: function() {
        $('.region').hide();

            $('.regionTitle').each(function(){

                $(this).click(function(e){
                    e.preventDefault();

                    $(this).parent().next('.region').slideToggle(300);
                });                     
            });
        }            
};

$(stockists.start);

addClass を試してみましたが、クラスを追加するだけで削除しないようですか?

4

3 に答える 3

5

toggleClass()は使用できません

このようにして、必要なときにクラスが追加/削除されます。

$(this).parent().toggleClass("className");
$(this).parent().next('.region').slideToggle(300);
于 2013-02-28T14:34:27.910 に答える
1
$(this).parent().toggleClass('activeTitle'); // toggling the class on the parent
$(this).parent().next('.region').slideToggle(300);
于 2013-02-28T14:35:43.360 に答える
0

要素からクラスを削除するには、removeClassを使用する必要があります

 $(element).removeClass("classname");
于 2013-02-28T14:34:21.030 に答える