47

Web ページが上からどれだけスクロールされたかを調べる場合、次のうちどれを使用する必要がありますか。

document.body.scrollTop

document.documentElement.scrollTop

window.pageYOffset

window.scrollY

次の 2 つのシナリオでは、どちらを選択しますか。

a) 最大限の互換性が必要な場合 (現在使用されている主要なブラウザ間で)?

b) ほとんどの標準に準拠した/将来に対応した/strict-mode と互換性のあるコードが必要な場合 (ただし、古い/非標準のブラウザーのサポートは気にしません)?

4

5 に答える 5

4

skrollr が を使用していないことを考えるとwindow.scrollY、これは明らかだったかもしれませんが、元の質問に対するさらなる回答として、window.pageYOffsetは のエイリアスですwindow.scrollYWindow.scrollYを参照してください。

于 2015-03-24T12:25:37.673 に答える
3

Prinzhornの回答に:

bodydocumentElementはChrome/Firefox にあるためundefined、以下を使用することをお勧めします。

return window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;

自分自身をテストしました。

于 2016-06-28T07:25:45.763 に答える