たぼさんの部屋

いちょぼとのんびり

スクロールイベント

参考サイト
Android OS(標準ブラウザ)では、スクロールの終了という契機を自動的に取得することができません。 そのため、iOSSafari)と動作を統一させるには、 自身でスクロールイベントをカスタマイズする必要が出てきます。

その一例をご紹介します。

 ■処理の流れ

  1.スクロールイベントハンドラで、0.5秒後に関数(スクロールイベント終了時の処理)呼び出し(タイマーで)

  2.スクロールイベントハンドラが再度呼び出されたら → 前タイマーをクリア後、自身を再起呼び出し(0.5秒後)

  3.タイマーで呼び出した関数(スクロールイベント終了時の処理)を実行

スクロール終了時に実行するためには

var timerID; 
window.onscroll = function() {
  // タイマーにより、スクロール終了時のみ処理を実行 
  if (timerID != null) { 
    clearTimeout(timerID); 
  } 
  timerID = setTimeout(function(){
      // スクロール終了時に実施したい処理
    } 
  }, 500); 
}