JavaScript 监听 HTML 页面滚动事件的方法
作者:页面旅途时间:2026-10-22 17:41:49浏览:490
本文介绍在JavaScript中监听HTML页面上下滚动事件的方法。通过定义scrollFunc函数处理wheelDelta属性,区分鼠标滚轮向上或向下的动作,并在控制台输出日志。示例代码展示了如何在body标签中绑定onscroll事件,实现实时滚动效果的监测与反馈。
滚动事件监听原理与实现
在最近的一个前端项目开发中,为了实现类似Android应用中实时监听页面上下滚动的功能,经过资料查阅,发现由鼠标或类似用户交互动作触发的事件主要包含以下几种情况,具体表现如下图所示:

以下直接提供经过测试验证可用的代码实现方案:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Dome</title>
<script type="text/javascript">
function scroll(){
//console.log("打印log日志");实时看下效果
console.log("开始滚动!");
}
var scrollFunc = function (e) {
e = e || window.event;
if (e.wheelDelta) { //第一步:先判断浏览器IE,谷歌滑轮事件
if (e.wheelDelta > 0) { //当滑轮向上滚动时
console.log("滑轮向上滚动");
}
if (e.wheelDelta < 0) { //当滑轮向下滚动时
console.log("滑轮向下滚动");
}
} else if (e.detail) { //Firefox滑轮事件
if (e.detail> 0) { //当滑轮向上滚动时
console.log("滑轮向上滚动");
}
if (e.detail< 0) { //当滑轮向下滚动时
console.log("滑轮向下滚动");
}
}
}
//给页面绑定滑轮滚动事件
if (document.addEventListener) {//firefox
document.addEventListener('DOMMouseScroll', scrollFunc, false);
}
//滚动滑轮触发scrollFunc方法 //ie 谷歌
window.onmousewheel = document.onmousewheel = scrollFunc;
</script>
</head>
<body onscroll="scroll()">
<div style="height: 2000px;background-color: aqua;"></div>
</body>
</html>
对于不熟悉 console.log("") 用法的开发者,这里提供一张在谷歌浏览器中的运行效果截图供参考:

上述内容即为关于JavaScript监听HTML页面滚动事件的完整分享,希望能为各位提供有价值的参考,同时也欢迎大家继续支持本站。
作者最新文章
JS监听滚动事件:回到顶部按钮的显示与隐藏逻辑
2026-11-05 16:19:37
JavaScript怎么读写LocalStorage与SessionStorage
2026-11-05 15:40:11
anime.js 与 GSAP 对比:轻量级项目该怎么选择动画库
2026-11-05 11:24:55
flv.js 与 hls.js 在直播场景下的选型对比
2026-11-05 08:18:52
JavaScript能做什么?前端开发中的作用与应用场景解析
2026-11-04 23:17:54
