ユーザーがページの上部にスクロールしたとき、つまりscrollTop <= 0
を検出できるようにする必要があります。 ChromeとFirefoxでは、ユーザーが十分にスクロールすると、ユーザーがページの上部に到達したときにスクロールイベントが常に発生するとは限りません。たとえば、ユーザーがページを1500pxダウンしてすばやくスクロールすると、最後のスクロールイベント内に取り込まれたscrollTop
の値は1200
になります。ページの上部に到達したときにChromeとFirefoxがスクロールイベントを発生しない
Safariの修正点は、スクロールイベントを発生させてオーバースクロールさせることで、scrollTopは負の値にすることができます。
scroll
とmousewheel
の両方のイベントを聴くことができますが、これはパフォーマンスがあまり高くなく、ページ横のスクロールバーをつかんでユーザーのスクロールの問題を解決していない可能性があります。
ユーザーがページの上部に到達したときに検出する最善の方法は何ですか?