エフェクトとかで何かとウィンドウのスクロール位置をセットすることは多いと思います。
何故かChromeで動かなくなり悩んだところ、
Webkit系でスクロール料の取得・設定に使用していたdocument.body.scrollTop
が使えなくなってるのが原因らしく。
document.scrollingElement.scrollTop
を呼べばよいみたい。
例
こんなコードを書いてたのですが動作せず。
setScrollTop(top) {
// Webkit系であればdocument.body.scrollTopを呼ぶ。
// それ以外はdocument.documentElement.scrollTopを。
const tgt = (this.browser.isWebKit) ? document.body : document.documentElement;
tgt.scrollTop = top;
}
こうしたら解決。
setScrollTop(top) {
let tgt;
if ('scrollingElement' in document) {
tgt = document.scrollingElement;
} else if (this.browser.isWebKit) {
tgt = document.body;
} else {
tgt = document.documentElement;
}
tgt.scrollTop = top;
}
もうちょい頭良いコードにできると思いますがひとまず。