检测window窗口是否滑动到底部

本文介绍了一种检测浏览器窗口是否滑动到底部的方法,并通过JavaScript实现了一个简单的加载更多功能。该方法通过监听滚动事件并比较窗口可视区域高度与已滚动高度来判断是否到达底部。

检测window窗口是否滑动到底部

话不多说,直接上代码

function windowAddEvent() {//为window绑定事件

            let height = document.querySelector('body').clientHeight - 10;
            // 状态值,防止获取数据太快
            let state = true;

            window.onscroll = function () {
				//获取窗口可视区域高度
                let ViewHeight = document.documentElement.clientHeight;
				//获取页面滚动时上移的距离
                let scrollHeight = window.pageYOffset;
				//当页面滑动到底部时理论上 可视区域高度 加上 滚动距离 等于 整个body的高度
                //但是实际上会差那么一点点,所以我们把获取的body高度减小一点,方便判断
                if (ViewHeight + scrollHeight >= height && state) {
					//在底部显示加载情况
                    document.querySelector('.loading').innerHTML = "正在加载^_^";
                    //改变状态值,防止在此期间重复设置定时器,
                    state = false;
					//800毫秒后请求数据
                    setTimeout(function () {
                        	//请求数据
                            getProductsList(classId);
                            state = true;
                    }, 800);
                }
            }
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值