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 相关文章推荐
HTML5+jQuery实现搜索智能匹配功能
Mar 24 jQuery
jquery Form轻松实现文件上传
May 24 jQuery
jQuery.Form实现Ajax上传文件同时设置headers的方法
Jun 26 jQuery
jQuery选择器之表单元素选择器详解
Sep 19 jQuery
jQuery 禁止表单用户名、密码自动填充功能
Oct 30 jQuery
jQuery+CSS实现的table表格行列转置功能示例
Jan 08 jQuery
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
Jan 25 jQuery
基于jQuery实现无缝轮播与左右点击效果
May 13 jQuery
jquery 通过ajax请求获取后台数据显示在表格上的方法
Aug 08 jQuery
jQuery.validate.js表单验证插件的使用代码详解
Oct 22 jQuery
jquery无缝图片轮播组件封装
Nov 25 jQuery
Jquery+AJAX实现无刷新上传并重命名文件操作示例【PHP后台接收】
May 29 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
国内php原创论坛
2006/10/09 PHP
用PHP实现WEB动态网页静态
2006/10/09 PHP
PHP多线程编程之管道通信实例分析
2015/03/07 PHP
PHP使用strstr()函数获取指定字符串后所有字符的方法
2016/01/07 PHP
PHP自定义多进制的方法
2016/11/03 PHP
Laravel 修改默认日志文件名称和位置的例子
2019/10/17 PHP
js 获取浏览器高度和宽度值(多浏览器)
2009/09/02 Javascript
javascript在事件监听方面的兼容性小结
2010/04/07 Javascript
Javascript简单改变表单元素背景的方法
2015/07/15 Javascript
基于jQuery代码实现圆形菜单展开收缩效果
2017/02/13 Javascript
浅谈nodejs中的类定义和继承的套路
2017/07/26 NodeJs
详解vue中的computed的this指向问题
2018/12/05 Javascript
IE11下处理Promise及Vue的单项数据流问题
2019/07/24 Javascript
原生javascript单例模式的应用实例分析
2020/02/23 Javascript
js实现数据导出为EXCEL(支持大量数据导出)
2020/03/31 Javascript
javascript代码实现简易计算器
2021/01/25 Javascript
[03:55]TI9战队采访——TNC Predator
2019/08/22 DOTA
Python序列之list和tuple常用方法以及注意事项
2015/01/09 Python
Python cookbook(数据结构与算法)让字典保持有序的方法
2018/02/18 Python
深入浅析Python2.x和3.x版本的主要区别
2018/11/30 Python
浅谈python图片处理Image和skimage的区别
2019/08/04 Python
Python 用turtle实现用正方形画圆的例子
2019/11/21 Python
新加坡鲜花速递/新加坡网上花店:Ferns N Petals
2020/08/29 全球购物
简历中的自我评价怎么写
2014/01/29 职场文书
置业顾问岗位职责
2014/03/02 职场文书
给全校老师的建议书
2014/03/13 职场文书
取保候审保证书
2014/04/30 职场文书
爱祖国演讲稿
2014/05/04 职场文书
2014年幼儿园园长工作总结
2014/12/17 职场文书
钱塘江大潮导游词
2015/02/03 职场文书
2015年乡镇扶贫工作总结
2015/04/08 职场文书
任命书格式范文
2015/09/22 职场文书
就业指导讲座心得体会
2016/01/15 职场文书
为什么中国式养孩子很累?
2019/08/07 职场文书
Redis中一个String类型引发的惨案
2021/07/25 Redis
Go微服务项目配置文件的定义和读取示例详解
2022/06/21 Golang