移动端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的初始化与对象构建之浅析
Apr 12 Javascript
js防止表单重复提交实现代码
Sep 05 Javascript
js格式化时间和js格式化时间戳示例
Feb 10 Javascript
jQuery使用load()方法载入另外一个网页文件内的指定标签内容到div标签的方法
Mar 25 Javascript
jQuery实现网站添加高亮突出显示效果的方法
Jun 26 Javascript
javascript实现数组内值索引随机化及创建随机数组的方法
Aug 10 Javascript
Javascript页面跳转常见实现方式汇总
Nov 28 Javascript
使用jQuery mobile库检测url绝对地址和相对地址的方法
Dec 04 Javascript
angular-ngSanitize模块-$sanitize服务详解
Jun 13 Javascript
HTML+JavaScript实现扫雷小游戏
Sep 30 Javascript
ckeditor一键排版功能实现方法分析
Feb 06 Javascript
解决ant Design中this.props.form.validateFields未执行的问题
Oct 27 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
用PHP编程开发“虚拟域名”系统
2006/10/09 PHP
php实现阿拉伯数字和罗马数字相互转换的方法
2015/04/17 PHP
PHP实现的字符串匹配算法示例【sunday算法】
2017/12/19 PHP
JS+XML 省份和城市之间的联动实现代码
2009/10/14 Javascript
jQuery学习笔记 操作jQuery对象 属性处理
2012/09/19 Javascript
js实现div的切换特效上一个下一个
2014/02/11 Javascript
javascript封装简单实现方法
2015/08/11 Javascript
实例代码讲解jquery easyui动态tab页
2015/11/17 Javascript
jquery对象和DOM对象的相互转换详解
2016/10/18 Javascript
jQuery获取table下某一行某一列的值实现代码
2017/04/07 jQuery
使用javascript做时间倒数读秒功能的实例
2019/01/23 Javascript
bootstrap中的导航条实例代码详解
2019/05/20 Javascript
Vue.js项目实战之多语种网站的功能实现(租车)
2019/08/07 Javascript
nuxt.js写项目时增加错误提示页面操作
2020/11/05 Javascript
vue 使用 v-model 双向绑定父子组件的值遇见的问题及解决方案
2021/03/01 Vue.js
[00:03]DOTA2新版本PA至宝展示
2014/11/19 DOTA
Python Tkinter基础控件用法
2014/09/03 Python
详解python实现读取邮件数据并下载附件的实例
2017/08/03 Python
pandas数据预处理之dataframe的groupby操作方法
2018/04/13 Python
对Python3中的print函数以及与python2的对比分析
2018/05/02 Python
在PyCharm中批量查找及替换的方法
2019/01/20 Python
python将字典列表导出为Excel文件的方法
2019/09/02 Python
pytorch中使用cuda扩展的实现示例
2020/02/12 Python
Selenium 安装和简单使用的实现
2020/12/04 Python
phpquery中文手册
2021/03/18 PHP
自荐信结尾
2013/10/27 职场文书
实习会计求职自荐信范文
2014/03/10 职场文书
海飞丝的广告词
2014/03/20 职场文书
反腐倡廉演讲稿
2014/05/22 职场文书
2014卖家双十一活动策划书
2014/09/29 职场文书
优秀高中学生评语
2014/12/30 职场文书
创建文明城市倡议书
2015/04/28 职场文书
钱学森观后感
2015/06/04 职场文书
催款函范文
2015/06/24 职场文书
2016年秋季运动会通讯稿
2015/11/25 职场文书
先进个人事迹材料(2016推荐版)
2016/03/01 职场文书