移动端web滚动分页的实现方法


Posted in Javascript onMay 05, 2017

本文实例为大家分享了移动端web滚动分页展示的具体代码,供大家参考,具体内容如下

方法一:前端代码:

<script type="text/javascript">
    var page = 2; //当前页的页码
    var flagNoData = false; //false
    var allpage = @Model.PageCount; //总页码,会从后台获取
    function showAjax(currentIndex) {
      $.ajax({
        url: "@Url.Action("GetEmployeeData", "Home")",
        type: "GET",
        data: {"pageNum":currentIndex},
        success: function (data) {
          //要执行的内容
          showContent(data);
          if (currentIndex >= allpage) { //当前页码大于等于总页码
            flagNoData = true;
          };
          page += 1;  //页数加1
        }
      })
    }
    function scrollFn() {
      //真实内容的高度
      var pageHeight = Math.max(document.body.scrollHeight, document.body.offsetHeight);
      //视窗的高度
      var viewportHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight || 0;
      //隐藏的高度
      var scrollHeight = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
      if (flagNoData) { //数据全部加载完了
        return;
      } else if (pageHeight - viewportHeight - scrollHeight < 10) {  //如果满足触发条件,执行
        showAjax(page);
      }
    }
    $(window).bind("scroll", scrollFn);  //绑定滚动事件

    function showContent(datacontent)
    {
      $("#contentDiv").append(datacontent);
    }
  </script>

适合移动端、PC端页面下拉 滚动分页

方法二(推荐):

插件 https://github.com/ximan/dropload

下载插件,引用css 和 js:

<link rel="stylesheet" href="~/Content/dropload.css" rel="external nofollow" />
<script type="text/javascript" src="~/Scripts/dropload.min.js"></script>
@section scripts{
  <script type="text/javascript" src="~/Scripts/dropload.min.js"></script>
  <script type="text/javascript">
    $(function () {
      var page = 1;
      var pageSize = 10;

      $(".content").dropload({
        scrollArea: window,
        loadDownFn: function (me) {
          page++;
          var result = '';
          $.ajax({
            url: "@Url.Action("GetEmployeeData", "Home")",
            type: "GET",
            data: { "pageNum": page },
            success: function (data) {
              var arrlen = data.length;
              if (arrlen > 0) {
                showContent(data);
                me.resetload();
              } else {
                me.lock();
                me.noData();
              }
            },
            error: function (xhr, type) {
              alert('Ajax error:' + xhr + type);
              me.resetload();
            }
          })
        }
      })
    });

    function showContent(datacontent) {
      $("#contentDiv").append(datacontent);
    }
  </script>
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript中的变量声明早于赋值分析
Mar 01 Javascript
jQuery回调函数的定义及用法实例
Dec 23 Javascript
jquery中键盘事件小结
Feb 24 Javascript
使用OPENLAYERS3实现点选的方法
Sep 24 Javascript
webpack构建vue项目的详细教程(配置篇)
Jul 17 Javascript
EasyUI创建人员树的实例代码
Sep 15 Javascript
Node.js中的cluster模块深入解读
Jun 11 Javascript
React 组件间的通信示例
Jun 14 Javascript
解决element-ui中下拉菜单子选项click事件不触发的问题
Aug 22 Javascript
微信小程序传值以及获取值方法的详解
Apr 29 Javascript
vue+elementui实现点击table中的单元格触发事件--弹框
Jul 18 Javascript
Vue过滤器(filter)实现及应用场景详解
Jun 15 Vue.js
vue.js之vue-cli脚手架的搭建详解
May 05 #Javascript
Vue中使用vux的配置详解
May 05 #Javascript
Angular directive递归实现目录树结构代码实例
May 05 #Javascript
微信小程序开发图片拖拽实例详解
May 05 #Javascript
javascript 中关于array的常用方法详解
May 05 #Javascript
解决OneThink中无法异步提交kindeditor文本框中修改后的内容方法
May 05 #Javascript
Angular中实现树形结构视图实例代码
May 05 #Javascript
You might like
php控制linux服务器常用功能 关机 重启 开新站点等
2012/09/05 PHP
php获取四位字母和数字的随机数的实现方法
2015/01/09 PHP
javascript 当前日期转化为中文的实现代码
2010/05/13 Javascript
重载toString实现JS HashMap分析
2011/03/13 Javascript
javascript实现行拖动的方法
2015/05/27 Javascript
详解js中构造流程图的核心技术JsPlumb(2)
2015/12/08 Javascript
React-Native中禁用Navigator手势返回的示例代码
2017/09/09 Javascript
JavaScript数据结构之优先队列与循环队列实例详解
2017/10/27 Javascript
json对象及数组键值的深度大小写转换问题详解
2018/03/30 Javascript
JS计算两个数组的交集、差集、并集、补集(多种实现方式)
2019/05/21 Javascript
跟老齐学Python之眼花缭乱的运算符
2014/09/14 Python
Python获取DLL和EXE文件版本号的方法
2015/03/10 Python
python脚本爬取字体文件的实现方法
2017/04/29 Python
分享一个简单的python读写文件脚本
2017/11/25 Python
Atom Python 配置Python3 解释器的方法
2019/08/28 Python
Python netmiko模块的使用
2020/02/14 Python
用什么库写 Python 命令行程序(示例代码详解)
2020/02/20 Python
卸载tensorflow-cpu重装tensorflow-gpu操作
2020/06/23 Python
Python 内存管理机制全面分析
2021/01/16 Python
快速一键生成Python爬虫请求头
2021/03/04 Python
ECOSUSI官网:女式皮革背包
2019/09/27 全球购物
如何利用find命令查找文件
2016/11/18 面试题
GWT都有什么特性
2016/12/02 面试题
生物化工专业个人自荐信
2013/09/26 职场文书
社会实践自我鉴定
2013/11/07 职场文书
校园安全演讲稿
2014/05/09 职场文书
关于责任的演讲稿
2014/05/20 职场文书
创先争优活动个人总结
2015/03/04 职场文书
总经理助理岗位职责范本
2015/03/31 职场文书
离婚起诉书怎么写
2015/05/19 职场文书
毕业论文答辩稿范文
2015/06/23 职场文书
2019银行竞聘书
2019/06/21 职场文书
高中议论文(范文2篇)
2019/08/19 职场文书
python自动化操作之动态验证码、滑动验证码的降噪和识别
2021/08/30 Python
Python利用zhdate模块实现农历日期处理
2022/03/31 Python
Redis入门基础常用操作命令整理
2022/06/01 Redis