首页 > 解决方案 > Javascript:是否可以确定到达页面末尾后用户滚动了多少?

问题描述

在移动设备上,在可拖动元素中包含可滚动元素是一种常见的 UI 模式。当您到达可滚动元素的末尾时,您开始拖动外部元素。例如,在这个 GIF ( https://media.giphy.com/media/9MJgBkoZfqA7jRdQop/giphy.gif ) 中,滚动到顶部后,如果继续滚动,它会拖动 subreddits 菜单。

我想使用 JS/CSS 实现类似的模式。为此,我需要检测用户是否在到达末尾后继续滚动。这可能吗?如果是这样,是否可以确定它们在到达终点后滚动了多少?

标签: javascriptcss

解决方案


 window.onscroll = function(element) {
    if ((window.innerHeight + window.pageYOffset) >= document.body.offsetHeight) {
       alert("you're at the bottom of the page");
    }
 };

使用元素参数来知道鼠标现在所在的当前确切 xy 以计算更多和一些滚动了多少

Javascript:如何检测浏览器窗口是否滚动到底部?


推荐阅读