移动端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 相关文章推荐
jQuery scroll事件实现监控滚动条分页示例
Apr 04 Javascript
Javascript控制input输入时间格式的方法
Jan 28 Javascript
浅谈javascript中call()、apply()、bind()的用法
Apr 20 Javascript
js省市县三级联动效果实例
Apr 15 Javascript
关于数据与后端进行交流匹配(点亮星星)
Aug 03 Javascript
Vue.js计算属性computed与watch(5)
Dec 09 Javascript
详解在Angularjs中ui-sref和$state.go如何传递参数
Apr 24 Javascript
jQuery实现下拉菜单的实例代码
Jun 19 jQuery
从零开始最小实现react服务器渲染详解
Jan 26 Javascript
webpack4 SCSS提取和懒加载的示例
Sep 03 Javascript
create-react-app安装出错问题解决方法
Sep 04 Javascript
详解如何在vue项目中使用eslint+prettier格式化代码
Nov 10 Javascript
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
iis下php mail函数的sendmail配置方法(官方推荐)
2012/04/25 PHP
很让人受教的 提高php代码质量36计
2012/09/05 PHP
php中ftp_chdir与ftp_cdup函数用法
2014/11/18 PHP
PHP中的Trait 特性及作用
2016/04/03 PHP
javascript 清除输入框中的数据
2009/04/13 Javascript
用showModalDialog弹出页面后,提交表单总是弹出一个新窗口
2009/07/18 Javascript
JavaScript中的typeof操作符用法实例
2014/04/05 Javascript
wap浏览自动跳转到wap页面的js代码
2014/05/17 Javascript
extjs 时间范围选择自动判断的实现代码
2014/06/24 Javascript
jQuery元素的隐藏与显示实例
2015/01/20 Javascript
微信小程序开发之圆形菜单 仿建行圆形菜单实例
2016/12/12 Javascript
微信运维交互机器人的示例代码
2018/11/12 Javascript
jQuery实现购物车的总价计算和总价传值功能
2018/11/28 jQuery
vue实现路由切换改变title功能
2019/05/28 Javascript
vue-cli3+ts+webpack实现多入口多出口功能
2019/05/30 Javascript
微信小程序聊天功能的示例代码
2020/01/13 Javascript
vue开发简单上传图片功能
2020/06/30 Javascript
python实现在无须过多援引的情况下创建字典的方法
2014/09/25 Python
纯Python开发的nosql数据库CodernityDB介绍和使用实例
2014/10/23 Python
对python指数、幂数拟合curve_fit详解
2018/12/29 Python
Python实现查找数组中任意第k大的数字算法示例
2019/01/23 Python
python求质数列表的例子
2019/11/24 Python
Python3的unicode编码转换成中文的问题及解决方案
2019/12/10 Python
python实现大战外星人小游戏实例代码
2019/12/26 Python
安全员岗位职责
2013/11/11 职场文书
服务员岗位职责
2014/01/29 职场文书
幼儿园运动会入场词
2014/02/10 职场文书
双创工作实施方案
2014/03/26 职场文书
销售经理竞聘书
2014/03/31 职场文书
警察先进个人事迹材料
2014/05/16 职场文书
中专生自荐信
2014/06/25 职场文书
先进党支部申报材料
2014/12/24 职场文书
决心书格式及范文
2019/06/24 职场文书
pytorch损失反向传播后梯度为none的问题
2021/05/12 Python
mybatis 解决从列名到属性名的自动映射失败问题
2021/06/30 Java/Android
nginx配置限速限流基于内置模块
2022/05/02 Servers