jquery判断滚动条是否到底部的方法

小编给大家分享一下jquery判断滚动条是否到底部的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

为阿坝州等地区用户提供了全套网页设计制作服务,及阿坝州网站建设行业解决方案。主营业务为网站制作、成都网站设计、阿坝州网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

jquery判断滚动条是否到底部的方法:1、使用【scrollTop()】方法,jQuery检测浏览器window滚动条到达底部;2、使用【scroll_div】检测动条到达底部事件。

jquery判断滚动条是否到底部的方法:

一、jQuery检测浏览器window滚动条到达底部

jQuery获取位置和尺寸相关函数:

  • $(document).height()    获取整个页面的高度

  • $(window).height()    获取当前也就是浏览器所能看到的页面的那部分的高度。这个大小在你缩放浏览器窗口大小时会改变,与document是不一样的

  • scrollTop()    获取匹配元素相对滚动条顶部的偏移。

  • scrollLeft()    获取匹配元素相对滚动条左侧的偏移。

  • scroll([[data],fn])    当滚动条发生变化时触犯scroll事件

jQuery检测滚动条到达底部代码:

$(document).ready(function() {
  $(window).scroll(function() {
  
    if ($(document).scrollTop()<=0){
      alert("滚动条已经到达顶部为0");
    }
  
    if ($(document).scrollTop() >= $(document).height() - $(window).height()) {
      alert("滚动条已经到达底部为" + $(document).scrollTop());
    }
  });
});

二、jQuery检测div中滚动条到达底部

上半篇介绍了jQuery检测浏览器window滚动条到达底部,其实还并不理解scrollTop和scrollHeight概念,通常滚动条都是放在div中的。

如下检测id为scroll_div滚动条到达底部事件:


      
        来自于www.创新互联.cn
        来自于www.创新互联.cn
        来自于www.创新互联.cn
      
    

首先需要理解几个概念:

也就是说scrollDiv的高度+scrollTop滚动的最大高度=scrollHeight

于是检测div中div滚动条高度就简单了:

$(document).ready(function() {
  $("#scroll_div").scroll(function(){
    var divHeight = $(this).height();
    var nScrollHeight = $(this)[0].scrollHeight;
    var nScrollTop = $(this)[0].scrollTop;
    $("#input1").val(nScrollHeight);
    $("#input2").val(nScrollTop);
    $("#input3").val(divHeight);
    if(nScrollTop + divHeight >= nScrollHeight) {
      alert("到达底部了");
    }
  });
});

如果是异步加载数据,数据没加载完,又触犯了同一页的数据加载请求,我通常是加一个flag

$(document).ready(function() {
  var flag = false;
  $("#scroll_div").scroll(function(){
     
    if(flag){
      //数据加载中
      return false;
    }
     
    var divHeight = $(this).height();
    var nScrollHeight = $(this)[0].scrollHeight;
    var nScrollTop = $(this)[0].scrollTop;
    $("#input1").val(nScrollHeight);
    $("#input2").val(nScrollTop);
    $("#input3").val(divHeight);
    if(nScrollTop + divHeight >= nScrollHeight) {
      //请求数据
      flag = true;
      alert("到达底部了");
    }
  });
});

以上是“jquery判断滚动条是否到底部的方法”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


分享文章:jquery判断滚动条是否到底部的方法
分享路径:http://scyanting.com/article/geshji.html

其他资讯