JavaScript 最新のChromeでscrollTopが取得できないときの対処法
Chrome
のバージョンが61
以上だと以下のような方法でscrollTop
を取得できなくなっています。
// 取得できない
var top = document.body.scrollTop;
対処法
対処法として、最近の新しいブラウザではdocument.scrollingElement
が使えるので、これに対応しているブラウザであればdocument.scrollingElement
を使用するようにします。
if ('scrollingElement' in document) {
top = document.scrollingElement.scrollTop;
} else {
top = document.body.scrollTop;
}
なお、古いIE
などに対応した取得方法はJavaScript ページの先頭までアニメーションスクロールをするで紹介しています。