我有一个动态的网站,有很多博客文章。我想先加载四篇文章,滚动到最后再加载四篇。我知道如何在后端处理它,但我在前端有问题。我已经将html和body的高度设置为100%,由于窗口上的滚动事件不起作用。作为一个变通方案,我决定使用一个div来检测滚动。我在div上添加了scroll事件,它工作得很好。但是当我尝试在div上检测滚动结束时,在执行任何滚动之前,在页面加载开始时执行的代码。我使用的代码是:
if (element.scrollHeight - element.scrollTop === element.clientHeight){
alert("End");
}
如何使警告仅在div滚动到末尾而不是开头时出现?
2条答案
按热度按时间yb3bgrhw1#
可以使用
element.scrollTop + element.offsetHeight>= element.scrollHeight
检测滚动结束。o7jaxewo2#
2023年的答案。
现在我们有了
scrollend
事件。在 chrome 108、火狐109上测试
示例:
根据mdn文件:
当文档视图完成滚动时,将激发
scrollend
事件。当滚动位置不再有未决更新并且
用户已经完成了他们的手势。
了解更多信息:Document: scrollend event