js实现移动HTML5页面滑动到最底部触发内容加载

首先要清楚3个定义:

  1. 文档高度

    这是整个页面的高度

  2. 可视窗口高度

    这是你看到的浏览器可视屏幕高度

  3. 滚动条滚动高度

    滚动条下滑过的高度

 

所以, 当 文档高度 = 可视窗口高度 + 滚动条高度  时,滚动条正好到底.

 

那我们就来定义三个不同的方法,分别获取上面3个高度值

//文档高度
function getDocumentTop() {
var scrollTop = 0,
bodyScrollTop = 0,
documentScrollTop = 0;
if (document.body) {
bodyScrollTop = document.body. scrollTop;
}
if (document.documentElement) {
documentScrollTop = document.documentElement. scrollTop;
}
scrollTop = ( bodyScrollTop - documentScrollTop > 0) ? bodyScrollTop : documentScrollTop;
return scrollTop;
11
}
//可视窗口高度
function getWindowHeight() {
var windowHeight = 0;
if (document. compatMode == "CSS1Compat") {
windowHeight = document.documentElement. clientHeight;
} else {
windowHeight = document.body. clientHeight;
}
return windowHeight;
}

//滚动条滚动高度
function getScrollHeight() {
var scrollHeight = 0,
bodyScrollHeight = 0,
documentScrollHeight = 0;
if (document.body) {
bodyScrollHeight = document.body. scrollHeight;
}
if (document.documentElement) {
documentScrollHeight = document.documentElement. scrollHeight;
}
scrollHeight = ( bodyScrollHeight - documentScrollHeight > 0) ? bodyScrollHeight : documentScrollHeight;
return scrollHeight;
}

//下面我们需要一个监听滚动条的事件
window. onscroll = function () {
//当滚动条移动马上就出发我们上面定义的事件触发函数,但是我们要求的是滚动条到底后才触发,所以自然这个触发事件里面需要逻辑控制一下.
if( getScrollHeight() == getWindowHeight() + getDocumentTop()){
    ajax_function ()
}
}


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值