其他分享
首页 > 其他分享> > 关于scrollTop踩过的坑

关于scrollTop踩过的坑

作者:互联网

scrollTop() 方法设置或返回被选元素的垂直滚动条位置。提示:当滚动条位于最顶部时,位置是 0。

当用于返回位置时:
该方法返回第一个匹配元素的滚动条的垂直位置。

当用于设置位置时:
该方法设置所有匹配元素的滚动条的垂直位置。

关于document.body.scrollTop总是为零的原因和解决方案:
1、各浏览器下 scrollTop的差异
IE6/7/8:
对于没有doctype声明的页面里可以使用 document.body.scrollTop 来获取 scrollTop高度 ;
对于有doctype声明的页面则可以使用 document.documentElement.scrollTop;
Safari:
safari 比较特别,有自己获取scrollTop的函数 : window.pageYOffset ;
Firefox:
火狐等等相对标准些的浏览器就省心多了,直接用 document.documentElement.scrollTop ;

解决办法:
页面指定了DOCTYPE时,使用document.documentElement。
页面没指定DOCTYPE时,使用document.body。
IE和Firefox都是如此。

完美的获取scrollTop 赋值短语 :

    let scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop

标签:body,documentElement,滚动条,关于,scrollTop,document,页面
来源: https://blog.csdn.net/Zhang__Hao__/article/details/122244155