获取页面滚动位置有以下几种主要方式:
1. window.pageYOffset
在大多数浏览器中,window.pageYOffset property 用于获取垂直方向滚动的像素值。
let scrollPosition = window.pageYOffset;
2. document.documentElement.scrollTop
IE 8 及更早版本不支持 window.pageYOffset,可以使用 document.documentElement.scrollTop 兼容:
let scrollPosition = document.documentElement.scrollTop;
3. document.body.scrollTop
对于 HTML 文档,document.body.scrollTop 也是可用的:
let scrollPosition = document.body.scrollTop;
4. element.scrollTop
可获取特定元素的垂直滚动距离,如某个 div 元素:
let el = document.getElementById('myDiv');
let scrollPosition = el.scrollTop;
5. pageYOffset/pageXOffset
IE9 及更高版本支持pageX/YOffset:
let scrollPosition = window.pageYOffset;
6. scrollIntoView()
可以通过 scrollIntoView() 滚动元素进入视图。