3
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

iOS ブラウザのスクロールイベント

Posted at

背景

github page で プロフィールサイト作ったのに ios のスクロールイベントがおかしい!

touchmove イベント

スマホのスクロールは慣性スクロールがあるので scroll イベントではとぎれとぎれになる

スマホのタッチイベントは 「押した時」 「動かした時」 「離した時」 と段階毎に用意されているらしい

スクロールだけに限定すれば touchmove イベントが 「動かした時」 なので, 連続してイベントが発生してくれる.

//...
window.addEventListener('scroll', this.handleScroll.bind(this));
window.addEventListener('touchmove', this.handleScroll.bind(this));
//...

のように両方用意しておくことでスマホでもPCでも同じようにイベントが発生する.

window.outerHeight

スクロールとは直接関係無いのだけれど, iOS のブラウザだと window.outerHeightwindow.outerWidth が 0 になってしまうバグ(?) があるらしいので注意すべき

3
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?