0

クリック イベントでのフッターの位置に問題があります。私はブートストラップcssを使用しており、折りたたむと.accordion-toggle.collapsedという名前のクラスがあり、そうでないときはクラスが.accordion-toggleである折りたたみ可能な要素(ブートストラップのアコーディオン)があります。

さて、この要素が折りたたまれているときにフッターをスライドダウンしようとしています(フッターを上書きしているため)。私のコードは次のとおりです。

<script>
$(function() { 

    var collapsed = $('.accordion-toggle.collapsed');

    $('#links').click(function(){
        if (collapsed){
            $(".footer").css({'margin-top':'320px'});
        }else{
            $(".footer").css({'margin-top':'150px'});
        } 
    });

});
</script>

問題は、折りたたみ可能な要素をクリックするとフッターがスライドダウンすることですが、もう一度クリックして折りたたまれていない場合 (彼のクラスが (accordion-toggle) に変更された場合、フッターは元の位置、つまり 150px のマージンに戻りません)。上。

助けてくれてありがとう!!!

4

1 に答える 1

1

更新: JavaScript を次のように変更します。

var collapsed;
$('#links').click(function () {
    collapsed = $('#links').hasClass('collapsed');
    if (collapsed) {
        $(".footer").css({'margin':'320px 0px 0px 0px'});
    } else {
        $(".footer").css({'margin':'150px 0px 0px 0px'});
    }
});

がクリックさcollapsedれるたびに新しい値を割り当てる必要があります。#linksまた、jQuery.css()には明らかに問題があるため、値を割り当てるmargin-topために使用するだけです。margin

于 2013-09-14T19:29:22.010 に答える