0

私の問題

ユーザーが上下にスクロールするたびに 1 ずつ増減するカウンターを作成しました。問題は、私のカウンター

$('html').on('mousewheel', function (e) {
    var delta = e.originalEvent.wheelDelta;

    if (delta < 0) {
        --count;
        transitionScreen(count);
        //$('h1').text ('You scrolled down');

    } else if (delta > 0 && count < 0) {
        ++count;
        transitionScreen(count);
        //$('h1').text ('You scrolled up');
    }
});

スクロールで複数回インクリメントしています。

ソリューション

そのため、誰かが underscore.js のdebounce 関数を提案して、カウンター関数が一定時間ごとに複数回実行されないようにしました。

問題は、ソリューションを実装する方法を正確に知らないことです。

誰かがこの関数で _.debounce を使用するのを手伝ってくれますか? 例を見ていますが、ここでの使用方法を正確に理解していません。私はJavaScriptが初めてで、すぐにそれを手に入れることができるので、どんな助けも大歓迎です。

ドキュメントのクリッピング

ドキュメントでは、デバウンスは次のように使用されます。

debounce_.debounce(function, wait, [immediate]) 

そして、ここに使用例があります:

var lazyLayout = _.debounce(calculateLayout, 300);
$(window).resize(lazyLayout);

ありがとう!

4

1 に答える 1