最近做到移动端页面的开发,需要mui 的上拉刷新功能,最后实现后整理代码如下:

1、需要引入的js

<link href="../resource/css/mui.min.css" rel="stylesheet" />
<script src="../resource/js/jquery-1.8.1.js" type="text/javascript" charset="utf-8"></script>
<script src="../resource/js/mui.min.js"></script>

2、dom结构

<div class="mui-content" id="goodsList">
<div class="mui-scroll">
<div class="mui-table-view mui-table-view-chevron">
</div>
</div>
</div>

3、动态获取数据,实现上拉加载

//动态添加的Input组件需要重新进行初始化
//mui('.mui-input-row input').input(); //获取列表全部数据
(function(){ var pageNum;//总条数
var pageSize = 20//每页显示的条数
var pageStart = 0;//当前页码
var counter = 1;//刷新次数
var Flag = true;
getAllGoodslist();//指定 某一页显示某几页
function getAllGoodslist(pageStart,pageSize){
var result="";
$.ajax({
url:"transport_showList",
type:'get',
dataType:'json',
timeout:10000,
data:{
startPage:counter,
length:20
},
error:function(data){
alert("error");
},
success:function(data){
console.log(data);
//判断是否有返回值 当没有返回值的时候就为空,则代表没有更多数据了
Flag=data[0].cargoName==null||data[0].cargoName==undefined||data[0].dcargoName=='';
if(Flag == false){
counter++;
console.log(counter);
}
$.each(data,function(i,value){
result += '<div class="mui-card" id='+value.transportInfoId+'>'
+ '<div class="mui-card-header mui-card-media orange">'
+'<span class="mui-icon iconfont icon-huowu"></span>&nbsp;&nbsp;'
+'<span id="cargoName">'+value.cargoName+'</span>'
+'</div>'
+'<div class="mui-card-content">'
+'<span class="mui-icon iconfont icon-weizhi green"></span>&nbsp;&nbsp;'
+'<span id="sshen">'+value.startprovince+'</span>'
+'<span id="sshi">'+value.startcity+'</span>'
+'<span id="sxian">'+value.startdistrict+'</span>'
+'</div>'
+'<div class="mui-card-footer" id="stripGoodsList">'
+'<span class="mui-icon iconfont icon-weizhi orange"></span>&nbsp;&nbsp;'
+'<span id="eshen">'+value.endprovince+'</span>'
+'<span id="eshi">'+value.endcity+'</span>'
+'<span id="exian">'+value.enddistrict+'</span>'
+'</div>'
+'<div class="hr1 hr1Address"></div>'
+'<div><a class="goodsInfo green" href="#">详情</a><span class="time">'+value.time+'</span></div>'
+'</div>';
})     
jQuery(result).insertBefore('#goodsList .mui-scroll .mui-table-view');
} })
}
//上拉加载数据
mui.init({
pullRefresh : {
container:"#goodsList",//待刷新区域标识,querySelector能定位的css选择器均可,比如:id、.class等
up : {
height:50,//可选.默认50.触发上拉加载拖动距离
auto:false,//可选,默认false.自动上拉加载一次
contentrefresh : "正在加载...",//可选,正在加载状态时,上拉加载控件上显示的标题内容
contentnomore:'没有更多数据了',//可选,请求完毕若没有更多数据时显示的提醒内容;
callback : pullupRefresh //必选,刷新函数,根据具体业务来编写,比如通过ajax从服务器获取新数据;
}
}
}); function pullupRefresh() {
setTimeout(function () {
mui('#goodsList').pullRefresh().endPullupToRefresh((Flag)); //参数为true代表没有更多数据了。
getAllGoodslist();
}, 1500);
}
})();

mui 上拉加载的更多相关文章

  1. mui 上拉加载更多的使用

    最近工作之余在用mui的框架开发,对mui了解了一些.在真正的app开发项目中,mui上拉加载模块中有两个坑,现在说一下. 1.在函数自己上拉加载行为后的回调函数 该函数是必须要写的,用来写自己的逻辑 ...

  2. mui 上拉加载 实现分页加载功能

    mui 上拉加载 实现分页加载功能,效果图: 分页功能(上拉加载): 1.引入需要的css.js文件 <link href="static/css/mui.css" rel= ...

  3. mui上拉加载

    最近在做移动端的项目,用到了mui的上拉加载,整理如下: 1.需要引入的css.js <link rel="stylesheet" href="common/mui ...

  4. jquery 和 mui 上拉加载

    jquery: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <m ...

  5. mui 上拉加载更多

    看起来很简单的东西,实践过程中还是出现了很多麻烦,比如上拉时,状态条跑到了顶部,因为内容没有添加到容器中,再比如下拉的回调函数使用问题,this的传递. html实现部分: <div class ...

  6. MUI - 上拉加载不执行

    mui('#pullrefresh').pullRefresh().refresh(true); if($(".list-item").length == countDataSum ...

  7. MUI上拉加载下拉刷新

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. mui上拉加载会影响页面中的某些点击事件

    项目是vue写的(移动端) <div class="mui-scroll"> <a :href="bannerinfo.activity_url&quo ...

  9. mui的上拉加载更多 下拉刷新 自己封装的demo

    ----------------------------------------------- 这是一个非常呆萌的程序妹子,深夜码的丑代码------------------------------- ...

随机推荐

  1. 微信小程序实现左滑删除效果(原生/uni-app)

    实现效果 列表中侧滑删除 删除不同时存在 scrollview上下滑动与侧滑删除不影响 uni-app实现 html部分 <template> <scroll-view :scrol ...

  2. 【linux】linux系统安全设置

    1.下载安装安全软件 2.取消Telnet登录采用SSH方式并更改ssh服务端远程登录的配置 1)Telnet登录协议是明文不加密不安全,所以采用更安全的SSH协议. 2)更改ssh服务端远程登录相关 ...

  3. 前端解析返回的对象时json显示$ref问题的解决

    在mapper中写的语句,结果集中association,采用的一个对象,整个list列表中每个元素有一个对象元素,如果第二个元素中有一个与第一个元素中对象同名的,就会去引用上一个元素的地址,在jso ...

  4. oracle分组后取某组中最大的值

    查询username,根据fundcode分组,按照date倒序,取date最大的一条数据 select * from ( select username, row_number() over(par ...

  5. 如何在Windows系统下使用you-get下载网上的媒体资源

    关于you-get的专业介绍可以点击这个链接:中文说明 1,首先你要在你的电脑上安装python环境 Windows系统下: 首先,你需要去官网下载相应的版本: 也可以下载我网盘里的(注意看好自己的电 ...

  6. POJ 2155 二维线段树 经典的记录所有修改再统一遍历 单点查询

    本来是想找一个二维线段树涉及懒惰标记的,一看这个题,区间修改,单点查询,以为是懒惰标记,敲到一半发现这二维线段树就不适合懒惰标记,你更新了某段的某列,但其实其他段的相应列也要打标记,但因为区间不一样, ...

  7. 箭头函数this

    箭头函数的this值是由包含它的函数(非箭头函数)来决定的,与包含的函数的this指向一致,如果包裹它的不是函数(直到找到最外层)则this指向全局对象 并且箭头函数的this是固定的,由定义它时所在 ...

  8. Java交换数据为何不起作用原因分析

    一.概述 目前各类语言中向函数传递参数的类型分为三种: 按值传递 按引用传递 按指针传递 其中按值传递表示方法(函数)接收的是调用者提供的变量的拷贝,不改变参数的值:按引用传递表示方法(函数)接收的调 ...

  9. CSU-ACM2020寒假集训比赛2

    A - Messenger Simulator CodeForces - 1288E 两种解法,我选择了第二种 mn很好求,联系过就是1,没联系过就是初始位置 第一种:统计同一个人两次联系之间的出现的 ...

  10. 每天一点点之vue框架开发 - vue-router路由在循环中携带参数

    场景:要实现一个标签云,通过循环把标签渲染,然后单击标签的时候实现跳转,跳转路由一样,通过唯一参数来实现请求不同的数据 因此,就需要在for循环中来携带参数,本节所讲的是路由使用对象的形式(别名)来实 ...