/**
* Internal normalized version of {@link ScrollPositionCoordinates} that always
- * has `left` and `top` coordinates.
+ * has `left` and `top` coordinates. Must be a type to be assignable to HistoryStateValue.
*
* @internal
*/
}
}
-export const computeScrollPosition = () =>
- ({
- left: window.pageXOffset,
- top: window.pageYOffset,
- } as _ScrollPositionNormalized)
+export const computeScrollPosition = (): _ScrollPositionNormalized => ({
+ left: window.scrollX,
+ top: window.scrollY,
+})
export function scrollToPosition(position: ScrollPosition): void {
let scrollToOptions: ScrollPositionCoordinates
window.scrollTo(scrollToOptions)
else {
window.scrollTo(
- scrollToOptions.left != null ? scrollToOptions.left : window.pageXOffset,
- scrollToOptions.top != null ? scrollToOptions.top : window.pageYOffset
+ scrollToOptions.left != null ? scrollToOptions.left : window.scrollX,
+ scrollToOptions.top != null ? scrollToOptions.top : window.scrollY
)
}
}