!
也想出现在这里? 联系我们
广告位

Jquery实现页面下拉滚动加载内容

最近要新写一个手机项目,感觉上面不是用得很舒服,然后就新写了一个,改动不是很大。

判断到底部

  1. $(window).scroll(function () {
  2. if ($(document).scrollTop() + $(window).height() >= $(document).height()) {
  3. alert("哦哦,到底了.");
  4. }
  5. });

如果要实现拉到底部自动加载内容。只要注册个滚动条事件:
首先,我们拉动滚动条,从最上面拉到最下面,变化的是 scrollTop 的值,而这个值是有一个区间的。这个区间是: [0, (offsetHeight – clientHeight)]即,滚动条拉动的整个过程的变化在 0 到 (offsetHeight – clientHeight) 范围之内。

1、判断滚动条滚动到最底端: scrollTop == (offsetHeight – clientHeight)

2、在滚动条距离底端 50px 以内: (offsetHeight – clientHeight) – scrollTop = 0.95

  1. scrollBottomTest =function(){
  2. $("#contain").scroll(function(){
  3. var $this =$(this),
  4. viewH =$(this).height(),//可见高度
  5. contentH =$(this).get(0).scrollHeight,//内容高度
  6. scrollTop =$(this).scrollTop();//滚动高度
  7. //if(contentH - viewH - scrollTop < = 100) { //到达底部100px时,加载新内容
  8. if(scrollTop/(contentH -viewH)>=0.95){ //到达底部100px时,加载新内容
  9. // 这里加载数据..
  10. }
  11. });
  12. }

判断垂直滚动条是否到达底部理清了以上的概念,编码其实就比较简单了, 以下是示例代码

  1. <script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.4.2.min.js"></script>
  2. <script language="javascript">
  3. $(document).ready(function (){
  4. var nScrollHight = 0; //滚动距离总长(注意不是滚动条的长度)
  5. var nScrollTop = 0; //滚动到的当前位置
  6. var nDivHight = $("#div1").height();
  7. $("#div1").scroll(function(){
  8. nScrollHight = $(this)[0].scrollHeight;
  9. nScrollTop = $(this)[0].scrollTop;
  10. if(nScrollTop + nDivHight >= nScrollHight)
  11. alert("滚动条到底部了");
  12. });
  13. });
  14. </script>
  15. <body>
  16. <div id="div1" style="overflow-y:auto; overflow-x:hidden; height:500px;">
  17. <div style="background-color:#ccc; height:750px;">IE 和 FF 下测试通过</div>
  18. </div>
  19. </body>

内部 div 高度为 750,外部 div 高度为 500,所以垂直滚动条需要滚动 750-500=250 的距离,就会到达底部,参见语句nScrollTop + nDivHight >= nScrollHight。程序中,在外部 div 的 scroll(滚动)事件中侦测和执行 if 判断语句,是非常消耗 CPU 资源的。用鼠标拖拉滚动条,只要有一个像素的变动就会触发该事件。但点击滚动条两头的箭头,事件触发的频率会低得多,所以滚动条的 scroll 事件要谨慎使用。

给TA打赏
共{{data.count}}人
人已打赏
前端学习

纯CSS3实现手风琴风格菜单具体步骤

2024-10-30 14:09:21

前端学习

网站加入鼠标滑过抖动样式

2024-10-30 14:15:10

下载说明

  • 1、微码盒所提供的压缩包若无特别说明,解压密码均为weimahe.com
  • 2、下载后文件若为压缩包格式,请安装7Z软件或者其它压缩软件进行解压;
  • 3、文件比较大的时候,建议使用下载工具进行下载,浏览器下载有时候会自动中断,导致下载错误;
  • 4、资源可能会由于内容问题被和谐,导致下载链接不可用,遇到此问题,请到文章页面进行反馈,以便微码盒及时进行更新;
  • 5、其他下载问题请自行搜索教程,这里不一一讲解。

站长声明

本站大部分下载资源收集于网络,只做学习和交流使用,版权归原作者所有;若为付费资源,请在下载后24小时之内自觉删除;若作商业用途,请到原网站购买;由于未及时购买和付费发生的侵权行为,与本站无关。本站发布的内容若侵犯到您的权益,请联系本站删除,我们将及时处理!
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索