jQuery滑动到底部加载下一页数据的实例代码


Posted in jQuery onMay 22, 2017

废话不多说了,直接给大家贴代码了,具体代码如下所示:

<script>page_num =page_num+1 ; //页码自动增加,保证下次调用时为新的一页。
      $.ajax({
        type: "get",  
        url: rent_url, 
        data: '2',
        dataType: "json",
        success: function (data) {
//          查询到的数据总数
          rentDataNum = data.count
//         每页加载6个 需要加载的页数 
          rentDataPagge = Math.ceil(rentDataNum/6);
          $(".loaddiv").hide();
//         返回信息的长度 大于0 则调用函数 把加载的数据通过html的形式 追加到视图中 
          if (data.houses.length > 0) {
            insertDiv(data.houses,rentDataPagge,pagenumber);
          }
        },
        beforeSend: function () {
          $(".loaddiv").show();
        },
        error: function (data) {
          $(".loaddiv").hide();
        }
      });
    }
    //初始化加载第一页数据
      getData(1);
    //生成数据html,append到div中
    function insertDiv(data,page_num,pagenumber) {
      var $mainDiv = $(".er_list");
      var result = '';
      if (pagenumber<=page_num){
        for (var i = 0; i < data.length; i++) {
          var houe_title   =  data[i].community_name != undefined ? data[i].community_name:data[i].business_area_name;
          result +='<li>';
          result +='<a href="#" rel="external nofollow" >'
          result +='<div class="img_left"><img src='+"http://image.5i5j.com/picture/slpic/l"+data[i].img_url+'></div>'
          result +='<div class="img_con">'
          result +='<h5>'+houe_title+'</h5>'
          result +='<p class="ting">'+data[i].bedroom+' 室'+ data[i].livingroom+' 厅1卫<span>·</span>'+data[i].buildarea+' ?<span>·</span>东南</p>'
          result +='<p class="info">'+data[i].district_name+'</p>'
          result +='<p class="tag">'
          result +='<em class="yell_01">不限购</em><em class="yell_02">近地铁</em><em class="yell_03">满两年</em><em class="yell_04">满两年</em>'
          result +='</p>'
          result +='<div class="jia"><p>'+data[i].price+' </p><span>123 /?</span></div>'
          result +='</div>'
          result +='</a>'
          result +='</li>';
        }
        $mainDiv.append(result);
        // 如果加载完数据则 删除等待加载时的图片
        if (pagenumber==page_num){
          $("div").remove('#loadings')
        }
      }
    }
    //==============核心代码=============
    var winH = $(window).height(); //页面可视区域高度
    var scrollHandler = function () {
      var pageH = $(document.body).height();
      var scrollT = $(window).scrollTop(); //滚动条top
      var aa = (pageH - winH - scrollT) / winH;
      if (aa < 0.02) {//0.02是个参数
        // 避免加载万书记 不停调用函数 进行的加载
        if (page_num<=rentDataPagge+1){
          // 滑动到地部 调用函数 加载数据
          getData(page_num);
        }
      }
    }
    //定义鼠标滚动事件
    $(window).scroll(scrollHandler);
    //==============核心代码=============
    //继续加载按钮事件
    $("#btn_Page").click(function () {
      getData(page_num);
      $(window).scroll(scrollHandler);
    });
  });
  </script>
jQuery 相关文章推荐
jQuery插件FusionWidgets实现的AngularGauge图效果示例【附demo源码】
Mar 23 jQuery
jquery dataTable 获取某行数据
May 05 jQuery
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
May 15 jQuery
jQuery Masonry瀑布流布局神器使用详解
May 25 jQuery
jQuery Autocomplete简介_动力节点Java学院整理
Jul 17 jQuery
jquery版轮播图效果和extend扩展
Jul 18 jQuery
JS+jQuery实现注册信息的验证功能
Sep 26 jQuery
jquery radio 动态控制选中失效问题的解决方法
Feb 28 jQuery
轻松搞定jQuery+JSONP跨域请求的解决方案
Mar 06 jQuery
jQuery实现通过方向键控制div块上下左右移动的方法【测试可用】
Apr 26 jQuery
通过jquery.cookie.js实现记住用户名、密码登录功能
Jun 20 jQuery
Jquery ajax书写方法代码实例解析
Jun 12 jQuery
jQuery表单验证之密码确认
May 22 #jQuery
JQuery 封装 Ajax 常用方法(推荐)
May 21 #jQuery
jQuery获取单选按钮radio选中值与去除所有radio选中状态的方法
May 20 #jQuery
关于jQuery库冲突的完美解决办法
May 20 #jQuery
jquery.guide.js新版上线操作向导镂空提示jQuery插件(推荐)
May 20 #jQuery
JS jQuery使用正则表达式去空字符的简单实现代码
May 20 #jQuery
jQuery插件select2利用ajax高效查询大数据列表(可搜索、可分页)
May 19 #jQuery
You might like
yii操作session实例简介
2014/07/31 PHP
php使用CURL伪造IP和来源实例详解
2015/01/15 PHP
比较详细的关于javascript中void(0)的具体含义解释
2007/08/02 Javascript
javascript间隔刷新的简单实例
2013/11/14 Javascript
js获取当前时间显示在页面上并每秒刷新
2014/12/24 Javascript
node.js中的forEach()是同步还是异步呢
2015/01/29 Javascript
详解JavaScript中shift()方法的使用
2015/06/09 Javascript
JQuery.Ajax()的data参数类型实例详解
2015/11/20 Javascript
Move.js入门
2017/02/08 Javascript
Angular2开发——组件规划篇
2017/03/28 Javascript
jQuery+ajax实现局部刷新的两种方法
2017/06/08 jQuery
Angularjs中的验证input输入框只能输入数字和小数点的写法(推荐)
2017/08/16 Javascript
ES6解构赋值实例详解
2017/10/31 Javascript
vue-cli的工程模板与构建工具详解
2018/09/27 Javascript
js布局实现单选按钮控件
2020/01/17 Javascript
Vue开发中常见的套路和技巧总结
2020/11/24 Vue.js
[05:46]DOTA2英雄梦之声_第18期_陈
2014/06/20 DOTA
[59:08]DOTA2上海特级锦标赛C组小组赛#2 LGD VS Newbee第一局
2016/02/27 DOTA
web.py获取上传文件名的正确方法
2014/08/26 Python
python调用百度语音识别实现大音频文件语音识别功能
2018/08/30 Python
Python3实现的简单三级菜单功能示例
2019/03/12 Python
python实现QQ批量登录功能
2019/06/19 Python
PyQt5响应回车事件的方法
2019/06/25 Python
python列表每个元素同增同减和列表元素去空格的实例
2019/07/20 Python
python框架django项目部署相关知识详解
2019/11/04 Python
Python在后台自动解压各种压缩文件的实现方法
2020/11/10 Python
加拿大消费电子和手机购物网站:The Source
2017/01/28 全球购物
Kangol帽子官网:坎戈尔袋鼠
2018/09/26 全球购物
Woods官网:加拿大最古老、最受尊敬的户外品牌之一
2020/09/12 全球购物
经济信息管理专业大学生求职信
2013/09/27 职场文书
保安的辞职报告怎么写
2014/01/20 职场文书
本科应届生自荐信
2014/06/29 职场文书
重阳节标语大全
2014/10/07 职场文书
公安机关党的群众路线教育实践活动剖析材料
2014/10/10 职场文书
新郎答谢词
2015/01/04 职场文书
2015年入党积极分子评语
2015/03/26 职场文书