私の問題
ユーザーが上下にスクロールするたびに 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);
ありがとう!