バウンススクロールを制御する方法

バウンススクロールを制御する方法:


バウンススクロールを打ち消したい

アプリ風のウェブサイトを作る際にバウンススクロールの制御で手間取ったのでメモ


採用した方法

position:fixedを使ってバウンススクロールしていないように見せかける方法を採用。


問題点

実際にバウンススクロールを起こすと数秒間フリーズし要素に触れなくなるというiOSのバグにぶつかった。

フリーズ中に更にスクロールを行うと追加で数秒間フリーズされる。


解決方法

スクロール位置を検知し上下にスクロールが行われたらスクロール位置を0に矯正するjsと追加。

$(window).on('touchmove', (e) => { 
  let moveY = $(window).scrollTop(); 
  if(moveY !== 0){ 
    $(window).scrollTop(0); 
  } 
}); 


まとめ

これでひとまず動いたので一旦これで。

コメント

このブログの人気の投稿

投稿時間:2021-06-17 22:08:45 RSSフィード2021-06-17 22:00 分まとめ(2089件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)