jQuery のscroll() メソッドを使用すると、要素がスクロールされたときに関数を実行できます。ただし、スクロールの停止を検出する簡単な方法はありません。
スクロールがいつ停止したかを判断するには、時限イベント ハンドラーを利用できます。以下に例を示します。
$(window).scroll(function() { clearTimeout($.data(this, 'scrollTimer')); $.data(this, 'scrollTimer', setTimeout(function() { // Scrolling has stopped console.log("Haven't scrolled in 250ms!"); }, 250)); });
このコードでは、タイマーを設定し、ユーザーがスクロールするたびにリセットします。タイマーが期限切れになると、スクロールが停止したことを示します。
または、jQuery Unevent.js 拡張機能によって提供される拡張 on() 関数を使用することもできます。
$(window).on('scroll', function(e) { console.log(e.type + '-event was 250ms not triggered'); }, 250);
Unevent.js を使用すると、イベント ハンドラーの遅延パラメーターを指定できます。こうすることで、指定された間隔内にイベントが発生しなかった場合にのみハンドラーが起動されます。
以上がjQuery を使用してスクロールが停止したことをどのように検出できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。