iPad で window.pageYOffset が間違った値を取得する
P粉022285768
P粉022285768 2024-03-21 23:52:08
0
1
325

ページを下にスクロールすると消えるタイトルフロートがあります。正常に動作しますが、私の iPad では動作しません。

ページを上にスクロールすると、ナビゲーション メニューが期待どおりに表示されますが、ページから手を離すとすぐに再び消えてしまいます。ページが一番下に到達すると

も表示されます

リーリー

この Web サイトは vuejs を使用して構築されています

関連部品:

ああああ

P粉022285768
P粉022285768

全員に返信(1)
P粉752812853

私はしばらくこの問題に悩んでいたので、見つけたものは次のとおりです:

問題は、iOS ではページが上端と下端で跳ね返るため、window.pageYOffset 値が負の値になり、実際のページの高さよりも大きくなる可能性があることです。したがって、条件 prevScrollpos >= currentScrollPos では十分ではありません。

  • 1 つの解決策は、html 要素に overscroll-behavior: none; を追加してバウンス効果を無効にすることです。

  • 正しい解決策は、条件をエッジケースに拡張することです:

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート