先上原理图:
判断滚动条是否到临近页面底部,关键是求得上图中 的数值,明显看出这个值 = 文档总高度 - 已滚动部分的高度 - 当前视口高度,所以有如下代码:
var minAwayBtm = 100; // 距离页面底部的最小距离$(window)scroll(function() {
var awayBtm = $(document)height() - $(window)scrollTop() - $(window)height();
consolelog('当前距离页面底部:' + awayBtm + 'px');
if (awayBtm <= minAwayBtm) {
consolelog('触发了');
}
});
我说说逻辑吧,如果写代码的话稍微繁琐点,我觉得这样是可以的:整个页面的高度是可以用js获取的,滚动条的当前高度也是可以用js获取的,那就意味着body的滚动条有没有到底部是完全可以通过js获取的,然后,div的滚动也是可以获取的,其实在页面上实现切换div不停的滚动就是焦点的问题,当你body的滚动到底之后,将焦点用js控制到div上,继续滚动,div的滚动就会实现了你不妨试试
思路:当滚动条到达底部时,调用js方法去加载数据
代码如下:
<div style="height:1600px;border:1px solid red">设高度模拟滚动</div>//引入js
<script src=">
$(window)scroll(function() {
// 当滚动到最底部以上100像素时, 加载新内容
if ($(this)scrollTop() >= 80) {
$("divnavbar")css("position","fixed");
}else{
$("divnavbar")css("position","relative");//也可能是absolute等,反正就是你原来的值
}
if ($(this)scrollTop() >= 150) {
$("divlog")css("position","fixed");
}else{
$("divlog")css("position","relative");//也可能是absolute等,反正就是你原来的值
}
});
//这个应该是可以的,原来的样式是什么样,改回什么样式就可以了,我只是写了一个例子
以上就是关于jQuery(JS)怎么判断滚动条快到底部了就触发函数全部的内容,包括:jQuery(JS)怎么判断滚动条快到底部了就触发函数、js怎么让body滚动条滚动到底或者到底了 鼠标再滚动时让另外一个DIV滚动、1。怎样用js实现先加载网页的一部分,等滚轮到一定位置再加载下面部分等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)