我需要检测用户是否滚动到页面底部.如果它们位于页面底部,当我向底部添加新内容时,我会自动将它们滚动到新底部.如果他们不在底部,他们正在阅读页面上前面的内容,所以我不想自动滚动他们,因为他们想呆在原地.

如何检测用户是否已滚动到页面底部,或者是否已在页面上滚动到更高的位置?

推荐答案

window.onscroll = function(ev) {
    if ((window.innerHeight + window.scrollY) >= document.body.offsetHeight) {
        // you're at the bottom of the page
    }
};

见演示

Javascript相关问答推荐

阻止iOS浏览器在传输摄像机视频时启用全屏摄像机模式

为什么(1 + Number.Min_UTE)等于1?

如何在加载的元数据上使用juserc和await中获得同步负载?

如何保持子画布元素的1:1宽高比?

脚本.js:3:20未捕获的类型错误:无法读取空的属性(读取addEventHandler)

foreach循环中的Typescript字符串索引

我的glb文件没有加载到我的three.js文件中

如何通过onClick为一组按钮分配功能;

如何解决这个未能在响应上执行json:body stream已读问题?

Bootstrap动态选项卡在切换选项卡后保持活动状态,导致元素堆叠

微软Edge编辑和重新发送未显示""

将现场录音发送到后端

无法检测卡片重叠状态的问题

WhatsApp Cloud API上载问题:由于MIME类型不正确而导致接收&Quot;INVALID_REQUEST";错误

在Reaction中的handleSubmit按钮内,useSelector值仍然为空

Reaction组件在本应被设置隐藏时仍显示

以编程方式聚焦的链接将被聚焦,但样式不适用

在验证和提交表单后使用useNavigate()进行react 重定向,使用带有加载器和操作的路由

如何在FiRestore中的事务中使用getCountFromServer

如何在尚未创建的鼠标悬停事件上访问和着色div?