Home
JavaScript
jQueryでスクロール中か否かを判定する方法

jQueryでスクロール中か否かを判定する方法

公開日
2022.03.12
更新日
2022.04.02
jQueryでスクロール中か否かを判定する方法

どうも!かけちまるです!

ユーザーがサイトを操作(スクロール)していない時に処理を実行したいことがある場合に使えるJavaScriptをご紹介したいと思います。

例えば、ユーザーがスクロールしていない時に広告バナーを表示させたい時などに使えそうですね。

この記事では、

  • ・スクロール中か判定する実装方法

がわかります。

スクロール中か判定する実装方法

今回はjQueryの

  • ・scrollイベント
  • setTimeout()
  • clearTimeout()

を使って実装します。

スクロール中は「スクロール中」、スクロールしていない時は「スクロールしていない」と表示されるように実装していきます。
該当ソースは次の通りです。

HTML
コピー
<div class="scroll">スクロールしていない</div>
JavaScript
コピー
let timeOut; $(window).on('scroll', function(){ let scrolling = 'スクロール中'; $('.scroll').text(scrolling); clearTimeout(timeOut); timeOut = setTimeout(function(){ scrolling = 'スクロールしていない'; $('.scroll').text(scrolling); }, 500); });

実装サンプル

スクロールしていない

まとめ

setTimeout()clearTimeout()を理解していないと難しく感じるかも知れません。
ですが、setTimeout()clearTimeout()は使う機会が多いと思うのでこの機会にマスターしておきましょう!

おわり

かけちまる
かけちまる
Webエンジニアをしています。
HTML/CSS/JavaScript/jQuery/PHPができます。
WEB制作を中心に日々学びになったこと、興味が沸いたことについて初心者の方でもわかりやすいようにアウトプットしていくブログです。

関連記事

【公式あり】jQueryでスクロール量に連動してアニメーションを実装する

【公式あり】jQueryでスクロール量に連動してアニメーションを実装する

【Contact Form7】ログインユーザーのためにテキスト項目にデフォルト値を設定する

【Contact Form7】ログインユーザーのためにテキスト項目にデフォルト値を設定する

【CSSのみ】背景のグラデーションを変化させるアニメーション

【CSSのみ】背景のグラデーションを変化させるアニメーション

Three.jsにおけるシェーダー(GLSL)の基本知識

Three.jsにおけるシェーダー(GLSL)の基本知識

【手動】Local by Flywheelで本番環境のWordPressをローカルに複製する

【手動】Local by Flywheelで本番環境のWordPressをローカルに複製する

positionで要素を中央寄せにする方法【CSS】

positionで要素を中央寄せにする方法【CSS】