JS如何判断滚动条是否滚到底部

简介: JS如何判断滚动条是否滚到底部

背景

通常我们需要判断滚动条是否滚到底部,以实现相应的功能,如“加载更多”等。

那么如何通过js来判断滚动条是否滚到底部,请看以下方法

解决方案(以纵向滚动条为例,横向滚动条方法类似)

判断滚动条到底部,需要用到DOM的三个属性值,即clientHeight、scrollTop、scrollHeight。(横向滚动条则是clientWidth,scrollLeft,scrollWidth)

clientHeight为内容可视区域的高度。


scrollTop为滚动条在Y轴上的滚动距离。


scrollHeight为内容可视区域的高度加上溢出(滚动)的距离。


从这个三个属性的介绍就可以看出来,滚动条到底部的条件即:

clientHeight + scrollTop === scrollHeight

constdom=document.getElementById('scrollElement');
dom.addEventListener('scroll', () => {
constclientHeight=dom.clientHeight;
constscrollTop=dom.scrollTop;
constscrollHeight=dom.scrollHeight;
if (clientHeight+scrollTop===scrollHeight) {
console.log('竖向滚动条已经滚动到底部')
  }
})
目录
相关文章
|
3月前
|
移动开发 JavaScript 前端开发
分享33个JS滚动条特效&47个JS瀑布流特效,总有一款适合您
分享33个JS滚动条特效&47个JS瀑布流特效,总有一款适合您
27 0
|
4月前
|
JavaScript
【经典】原生JS实现“用鼠标拖拽(drag)内容DIV”,滚动条对应同步滚动
【经典】原生JS实现“用鼠标拖拽(drag)内容DIV”,滚动条对应同步滚动
|
7月前
|
JavaScript
计算滚动条的宽度--js
计算滚动条的宽度--js
37 0
|
7月前
|
JavaScript
js判断滚动条是否到底部demo效果示例(整理)
js判断滚动条是否到底部demo效果示例(整理)
|
9月前
|
JavaScript
JS 监听滚动条事件
JS 监听滚动条事件
|
2月前
|
JavaScript
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
27 0
|
2月前
|
消息中间件 Web App开发 JavaScript
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
77 0
|
3天前
|
JavaScript 前端开发 测试技术
学习JavaScript
【4月更文挑战第23天】学习JavaScript
11 1
|
11天前
|
JavaScript 前端开发 应用服务中间件
node.js之第一天学习
node.js之第一天学习
|
1月前
|
运维 JavaScript 前端开发
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!