0

スライドダウン メニュー コンテンツの作業コードがあります。

ただし、ボタンをクリックしたときにホバー状態と同じアクティブを維持し、クリックして閉じるとオフにするのに問題があります。

これが私の作業例です。

// IF THE NEXT SLIDE WASN'T OPEN THEN OPEN IT
if($(this).next().is(':hidden') == true) {
    // ADD THE ON CLASS TO THE BUTTON
    $(this).addClass('on');

    // OPEN THE SLIDE
    $(this).next().slideDown('normal');
}
4

2 に答える 2

1

これが私の解決策です。

//ACCORDION BUTTON ACTION (ON CLICK DO THE FOLLOWING)
    $('.accordionButton').click(function() {

        //REMOVE THE ON CLASS FROM ALL BUTTONS
        $('.accordionButton').removeClass('on');

        //NO MATTER WHAT WE CLOSE ALL OPEN SLIDES
        var self = this;
        $(this).next().slideToggle('normal', function() {
             $(self).toggleClass('on', $(this).is(':visible'));                                   
        });
     });

デモを試す

于 2013-04-28T15:09:04.183 に答える
0

試す

//ACCORDION BUTTON ACTION (ON CLICK DO THE FOLLOWING)
$('.accordionButton').click(function() {

    //REMOVE THE ON CLASS FROM ALL BUTTONS
    $('.accordionButton').not(this).removeClass('on');

    //IF THE NEXT SLIDE WASN'T OPEN THEN OPEN IT
    if($(this).next().is(':hidden') == true) {

        //ADD THE ON CLASS TO THE BUTTON
        $(this).addClass('on');

        //OPEN THE SLIDE
        $(this).next().slideDown('normal');
    }

});

デモ:フィドル

于 2013-04-28T14:59:02.923 に答える