微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

iscroll.js滚动加载实例详解

滚动加载是个好东西,可以解决一次加载过多的尴尬,其实就是变相的分页,总结下这个轮子的用法,挺简单的。

首先是html结构:

rush:xhtml;">
} }

然后是css样式:

rush:css;"> #wrapper { position: absolute; z-index: 1; top: 0; bottom: 0; left: 0; width: 100%; overflow: hidden; }

scroller {

position: absolute;
z-index: 1;
-webkit-tap-highlight-color: rgba(0,0);
width: 100%;
-webkit-transform: translateZ(0);
-moz-transform: translateZ(0);
-ms-transform: translateZ(0);
-o-transform: translateZ(0);
transform: translateZ(0);
-webkit-touch-callout: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-text-size-adjust: none;
-moz-text-size-adjust: none;
-ms-text-size-adjust: none;
-o-text-size-adjust: none;
text-size-adjust: none;
}

more

{ 
  text-align:center; 
} </pre>

需要的话,给父元素套上position:relative属性 最后是脚本中的初始化和获取数据:

rush:js;"> var pagenum = 1,update = true,id=ID; var myScroll; setTimeout(function(){ myScroll = new IScroll('#wrapper',{ mouseWheel: true,click: true }); myScroll.on('scrollEnd',function () { //console.log(this.y +"|||"+this.maxScrollY); //如果滑动到底部,则加载更多数据(距离最底部10px高度) if ((this.y - this.maxScrollY) == 0) { getMore(); } }); },100 );
function getMore() { 
  var that = document.getElementById("more"); 
  pagenum++; 
  $.ajax({ 
    url: '/***/getPage',data: {'currentPage':pagenum,'id':id},type: 'POST',datatype: "json",success: function (data) { 
      //alert(data); 
      var list = data.List; 
      if (list.length < 1) { 
        pagenum--; that.innerHTML = "已经没有更多了..."; return; 
      } 
      var ul = document.getElementById("thelist"); 
      for (var i = 0; i < list.length; i++) { 
        var str = "<li>"; 
        str += "<div class=\"panelListItemForALL\"&gt;<table class=\"allRecordTable\"&gt;<tbody><tr&gt;<td&gt;***</td&gt;<td&gt;"+list[i].OrderCode+"</td&gt;"; 
        str += "</tr&gt;<tr&gt;<td&gt;***</td&gt;<td&gt;"+list[i].GoodsName+"</td&gt;</tr&gt;"; 
        str += "<tr&gt;<td&gt;***</td&gt;<td&gt;"+ data.DatatimeArray[i] +"</td&gt;"; 
        str += "</tr&gt;</tbody></table&gt;</div>"; 
        str += "</li>"; 
        ul.innerHTML += str; 
        myScroll.refresh(); 
      } 
    } 
  }); 

} 

把相应的数据填充进去就好,当然控制器里要写一个分页获取数据的方法,通过这里的ajax获取

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


什么是深拷贝与浅拷贝?深拷贝与浅拷贝是js中处理对象或数据复制操作的两种方式。‌在聊深浅拷贝之前咱得了解一下js中的两种数据类型:
前言 今天复习了一些前端算法题,写到一两道比较有意思的题:重建二叉树、反向输出链表每个节点 题目 重建二叉树: 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列 {1,2,4,7,3,5,6,8} 和中序遍历序列 {
最近在看回JavaScript的面试题,this 指向问题是入坑前端必须了解的知识点,现在迎来了ES6+的时代,因为箭头函数的出现,所以感觉有必要对 this 问题梳理一下,所以刚好总结一下JavaScript中this指向的问题。
js如何实现弹出form提交表单?(图文+视频)
js怎么获取复选框选中的值
js如何实现倒计时跳转页面
如何用js控制图片放大缩小
JS怎么获取当前时间戳
JS如何判断对象是否为数组
JS怎么获取图片当前宽高