我正在尝试使用 javascript document.body.scrollTop 获取当前滚动像素并与单页网站(5 个部分)中的窗口高度进行比较。我的主要目标是用户在总高度的 1/5、2/5、3/5、4/5、5/5 区域滚动,页面将自动停留在该部分。但是在我的代码中,我得到了 document.body.scrollTop 向我展示了 2 个不同的值,这让我很困惑。
window.onscroll = function() {
var winH = document.documentElement.clientHeight
var scrollH = document.body.scrollTop
console.log(winH, scrollD);
if ( winH < (scrollD*1.2) ) {
console.log(winH , scrollH)
}}
在控制台中滚动时将显示 2 组具有相同变量的不同高度。例子:
518 218(来自第一个控制台日志,这是正确的,我的窗口高 518px,滚动 218px)
218 218(我不明白为什么这个值相同,因为它总是显示相同的值,所以 if 语句被破坏了。)
ps:如果我将document.body.scrollTop 更改为全局变量,控制台将显示无法读取Null 的scrollTop 值的适当性。为什么它的功能很好?
谢谢