上拉刷新,下拉加载更多。。。仿原生的效果----iscroll是一款做滚动效果的插件,具体介绍我就不废话,看官方文档,我只写下我项目开发的一些用到的用法:

(如果不好使,调试你的css,想必是个很蛋疼的问题,给点提示 :#wrapper,以及#scroller-content要注意)

html如下:

 <div class="viewport">
<div id="wrapper" class="wrapper">
<div id="scroller">
<div id="scroller-pullDown">
<span id="down-icon" class="pull-down-icon fa fa-refresh fa-spin fa-fw"></span>
<span id="pullDown-msg" class="pull-down-msg">下拉刷新</span>
</div>
<div id="scroller-content">
//你写的内容在这里
</div>
<div id="scroller-pullUp">
<span id="up-icon" class="pull-up-icon fa fa-spinner fa-spin fa-fw"></span>
<span id="pullUp-msg" class="pull-up-msg">上拉加载</span>
</div>
</div>
</div>
</div>

css如下:

/* =================iscroll================================= */

#wrapper {
position: absolute;
z-index:;
top: 210*@size;
bottom: 0px;
left:;
width: 100%;
overflow: hidden;
} #scroller {
position: absolute;
z-index:;
-webkit-tap-highlight-color: rgba(0, 0, 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;
} #scroller-pullDown,
#scroller-pullUp {
background: #333333;
height: 50px;
line-height: 50px;
border-bottom: 1px solid #ccc;
font-weight: bold;
font-size: 14px;
color: #888;
text-align: center;
position: absolute;
left: 0px;
width: 100%;
} #scroller-pullDown {
top: -50px;
} #scroller-pullUp {
bottom: -50px;
} .pull-up-msg,
.pull-down-msg {
padding-left: 5px;
position: relative;
top: 0px;
} #scroller-pullDown .pull-down-icon,
#scroller-pullUp .pull-up-icon {
display: inline-block;
color: #e84c3d;
font-size: 16px;
}

js代码看这里:

    function pushData(m) {
var m = m || 10;
if (flag) {
//发送Ajax,循环自己的数据加载:
$.myGET(uri, {formData}, function (data) {
if (data.result) {
for (var i = 0; i < data.package.length; i++) {
data.package[i].isPass ? data.package[i].isPass = "pass" : data.package[i].isPass = "unpass";
temp = '<li>' + '<span class="item ellips">' + data.package[i].planName + '</span>' + '<span class="time">' + '2017.03.08' + '</span>' + '<span class="score">' + data.package[i].score + '</span>' + '<span class="status"><img src="/images/mainFrame/icon_result_' + data.package[i].isPass + '.png" alt=""></span>' + '<li>';
$("#target").append(temp);
}
if (m * n > data.total) {
$("#pullUp-msg").text("已无更多数据");
flag = false;
return false;
}
} } (function(window) {
var myScroll,
upIcon = $("#up-icon"),
downIcon = $("#down-icon"),
target = $("#target"),
temp = " "; myScroll = new IScroll('#wrapper', {
probeType: 3,
mouseWheel: true
}); myScroll.on("scroll", function() {
var y = this.y,
maxY = this.maxScrollY - y,
downHasClass = downIcon.hasClass("reverse_icon"),
upHasClass = upIcon.hasClass("reverse_icon"); if (y >= 40) {
!downHasClass && downIcon.addClass("reverse_icon");
return "";
} else if (y < 40 && y > 0) {
downHasClass && downIcon.removeClass("reverse_icon");
return "";
} if (maxY >= 40) {
!upHasClass && upIcon.addClass("reverse_icon");
return "";
} else if (maxY < 40 && maxY >= 0) {
upHasClass && upIcon.removeClass("reverse_icon");
return "";
}
});
//下拉逻辑在这里!
myScroll.on("slideDown", function() {
if (this.y > 40) {
window.location.reload();
}
}); //上拉逻辑在这里!
myScroll.on("slideUp", function() {
if (this.maxScrollY - this.y > 40) {
pushData();
myScroll.refresh();
}
}); })(window)

iscroll.js实现上拉刷新,下拉加载更多,应用技巧项目实战的更多相关文章

  1. juery下拉刷新,div加载更多元素并添加点击事件(二)

    buffer.append("<div class='col-xs-3 "+companyId+"' style='padding-left: 10px; padd ...

  2. Android 自定义 ListView 上下拉动“刷新最新”和“加载更多”歌曲列表

    本文内容 环境 测试数据 项目结构 演示 参考资料 本文演示,上拉刷新最新的歌曲列表,和下拉加载更多的歌曲列表.所谓"刷新最新"和"加载更多"是指日期.演示代码 ...

  3. jQuery模拟原生态App上拉刷新下拉加载

    jQuery模拟原生态App上拉刷新下拉加载效果代码,鼠标上拉时会显示loading字样,并且会模拟加载一条静态数据,支持触屏设备使用. <!doctype html> <html ...

  4. Android之 RecyclerView,CardView 详解和相对应的上拉刷新下拉加载

    随着 Google 推出了全新的设计语言 Material Design,还迎来了新的 Android 支持库 v7,其中就包含了 Material Design 设计语言中关于 Card 卡片概念的 ...

  5. Flutter学习笔记(25)--ListView实现上拉刷新下拉加载

    如需转载,请注明出处:Flutter学习笔记(25)--ListView实现上拉刷新下拉加载 前面我们有写过ListView的使用:Flutter学习笔记(12)--列表组件,当列表的数据非常多时,需 ...

  6. 微信小程序 上拉刷新/下拉加载

    小程序项目中上拉刷新下拉加载是比较常见的需求,官方文档也提供了相当友好的API,但是因为API隐藏的比较深,文档描述也比较模糊所以也折腾了一番(官方文档),在此记录一下使用方式 onPullDownR ...

  7. ListView上拉刷新和分页加载完整的Dome

    很多人工作的过程中都会碰到ListView下拉刷新和分页加载,然后大多数公司都已经把框架写好了,大家直接用就可以了,有些人一直对这个事情处于迷茫状态,为了让大家对上拉刷新和分页加载有一个比较全面的认识 ...

  8. jQuery WeUI 组件下拉刷新和滚动加载的实现

    最近在做手机版使用到了下拉刷新和滚动加载,记录一下实现过程: 一.引入文件 ? 1 2 3 4 <link rel="stylesheet" href="Conte ...

  9. 实现app上对csdn的文章列表上拉刷新下拉加载以及加入缓存文章列表的功能 (制作csdn app 四)

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/23698511 今天继续对我们的csdn客户端未完成的功能进行实现,本篇博客接着客 ...

  10. 第三方 XListview 上拉加载、下拉刷新、分页加载和Gson解析

    注意:此Demo用的是第三方的Xlistview.jar,需要复制me文件夹到项目中,两个XML布局文件和一张图片 把下面的复制到String中 <string name="xlist ...

随机推荐

  1. python-IO编程,文件读写

    一.文件读写 1.打开文件 函数:open(name[. mode[. buffering]]) 参数: name:必须:文件的文件名(全路径或执行文件的相对路径.)) mode:可选:对文件的读写模 ...

  2. [Go] golang使用github里的imap类库

    1.在windows系统下,需要首先定义两个环境变量GOPATH和GOROOT, GOPATH是第三方类库的代码目录 , GOROOT是go的安装目录 2.按照我的定义 , 进入这个目录D:\gola ...

  3. Windows系统 应用或游戏 打开出现0xc000007b错误 解决方法

    1.使用directX修复工具(推荐) 标准版 增强版 标准版备用地址 增强版备用地址 2. 重新安装DirectX 9.0 安装包(安装包体积大) 微软官方离线安装包 摘录CSDN博客 运行游戏时出 ...

  4. Win下Jenkins-2.138源码编译及填坑笔记

    源码编译篇 1.  安装JDK1.8-181,操作系统添加JDK环境变量.Java -version验证一下. 注:Jenkins2.138版本,JDK必须jkd1.8.0-101以上,不支持Java ...

  5. 开源介绍·新款简约、实用与大气的Hexo新主题:BMW

    这是一个简约.大气.实用的Hexo新主题:BMW

  6. WEB前端常见面试题汇总:(一)

    1.JS找字符串中出现最多的字符 例如:求字符串'nininihaoa'中出现次数最多字符 方法一: var str = "nininihaoa"; var o = {}; for ...

  7. 借助表达式树感受不一样的CRUD

    借助表达式树感受不一样的CRUD Intro 最近有个想法,想不写 sql 语句,做一个类似于 ORM 的东西,自己解析表达式树,生成要执行的 sql 语句,最后再执行 sql 语句,返回相应结果. ...

  8. 【转贴】一次 JDBC 与 MySQL 因 “CST” 时区协商误解导致时间差了 14 或 13 小时的排错经历

    原文:https://juejin.im/post/5902e087da2f60005df05c3d ------------------------------------------------- ...

  9. 日志学习系列(二)——Log4net的实例

    一.log4net简单实例创建步骤如下 1.第一步:在项目中添加对log4net.dll的引用,这里引用版本是2.0.8.0 2.第二步:程序启动时读取log4net的配置文件. 读取log4net的 ...

  10. ASP.NET MVC学习系列(4)——MVC过滤器FilterAttribute

    1.概括 MVC提供的几种过滤器其实也是一种特性(Attribute),MVC支持的过滤器类型有四种,分别是:AuthorizationFilter(授权),ActionFilter(行为),Resu ...