0

ナビゲーション メニューをアニメーション化 (上からスライドイン) しようとしていますが、scroll() 関数によってトリガーされます。ユーザーのスクロールが 40 を超えた場合、ナビゲーション メニューをアニメーション化する必要があります。ユーザーが 40 回未満スクロールすると、ナビゲーション メニューは再びアニメーション化する (上にスライドする) 必要があります。

以下の jsFiddle のコードで動作しますが、ユーザーが 40 を超えて下にスクロールすると、スクロールするたびに関数が呼び出されるため、ナビゲーション メニューが非常にゆっくりとスムーズに下にスライドしません。

誰かが別の関数を使用してからscroll()を修正する方法を知っていますか? ありがとう!

これがjsFiddleで、以下が jQuery コードです。

$(document).ready(function() {

    /** HIDE MENU **/
    $(".menu").css("margin-top", "-88px");

    $(window).scroll(function() {

        var verschil = ($(window).scrollTop() / 5);

        if (verschil > 40) 
        $('.menu').animate({'margin-top': '0px' }, {duration: 500, queue: false});

        else if (verschil < 40)
        $('.menu').animate({'margin-top': '-88px' }, {duration: 500, queue: false});
    });

});
4

1 に答える 1