mui实现列表的下拉刷新上拉加载

本文介绍如何利用MUI框架实现移动端应用的下拉刷新功能。包括引入MUI库文件、设置滚动容器、初始化MUI组件、定义下拉刷新回调函数等步骤,并给出具体的代码示例。

1、引入mui控件的js文件和css样式文件

<link rel="stylesheet" href="css/mui.min.css">
<script src="js/mui.min.js"></script>

2、完善列表容器:.mui-scroll-wrapper为滚动容器,.mui-scroll为滚动主体,里边内容不限。

<div id="pullrefresh" class="mui-scroll-wrapper">
    <div class="mui-scroll">
        <ul class="mui-table-view">
            <li class="mui-table-view-cell">data</li>
            <li class="mui-table-view-cell">data</li>
        </ul>
    </div>
</div>

 

3、初始化mui控件:初始化会生成部分mui需要用到的控件,给容器和列表绑定事件。

mui.init({ 
pullRefresh : {
   swipeBack: false, //关闭左滑关闭功能 container:
"#refreshContainer",//下拉刷新容器标识,querySelector能定位的css选择器均可,比如:id、.class等 down : { style:'circle',//必选,下拉刷新样式,目前支持原生5+ ‘circle’ 样式 color:'#2BD009', //可选,默认“#2BD009” 下拉刷新控件颜色 height:'50px',//可选,默认50px.下拉刷新控件的高度, range:'100px', //可选 默认100px,控件可下拉拖拽的范围 offset:'0px', //可选 默认0px,下拉刷新控件的起始位置 auto: true,//可选,默认false.首次加载自动上拉刷新一次 callback :pulldownRefresh //必选,刷新函数,根据具体业务来编写,比如通过ajax从服务器获取新数据; },
  up:{
    
contentrefresh: '正在加载...',
    contentnomore:'没有更多数据了',
    callback:pulluploading //上拉加载下一页
  }
});

4、定义下拉刷新列表方法 pulldownRefresh()

mui.ajax("请求url", {
    type: "get",
    dataType: "json",
    data:{
            param:param,
            name:name
        },
        success: function(data){
             //将获取到的数据动态赋值给列表,假设scroller为滚动容器
             //如果数据不到一页,显示“没有更多数据了”,关闭上拉功能
             //scroller.endPullupToRefresh(true);
             //scroller.querySelector(".mui-pull-bottom-pocket .mui-pull-caption").innerHTML = "没有更多数据了";
             //如果对于关闭的上拉功能,可以通过以下语句重置上拉加载功能。
             //mui('#pullrefresh').pullRefresh().refresh(true);
        }
});  

5、定义上拉加载功能:pulluploading()该方法同下拉刷新相似。(最后一页关闭上拉加载、提示没有数据参考下拉刷新。

6、多页数据提示:列表下方提示及下拉刷新效果

 

尾页页面效果:scroller.endPullupToRefresh(true);

 

 

转载于:https://www.cnblogs.com/zhoujl-5071/p/7978369.html

这是一款基于mui框架制作的选项卡切换和下拉刷新加载数据列表代码,手机移动端选项卡切换插件,触屏滑动下拉刷新代码。 js代码 [removed][removed] [removed][removed] [removed][removed] [removed] mui.init(); (function($) { //阻尼系数 var deceleration = mui.os.ios?0.003:0.0009; $('.mui-scroll-wrapper').scroll({ bounce: false, indicators: true, //是否显示滚动条 deceleration:deceleration }); $.ready(function() { //循环初始化所有下拉刷新上拉加载。 $.each(document.querySelectorAll('.mui-slider-group .mui-scroll'), function(index, pullRefreshEl) { $(pullRefreshEl).pullToRefresh({ down: { callback: function() { var self = this; setTimeout(function() { var ul = self.element.querySelector('.mui-table-view'); ul.insertBefore(createFragment(ul, index, 10, true), ul.firstChild); self.endPullDownToRefresh(); }, 1000); } }, up: { callback: function() { var self = this; setTimeout(function() { var ul = self.element.querySelector('.mui-table-view'); ul.appendChild(createFragment(ul, index, 5)); self.endPullUpToRefresh(); }, 1000); } } }); }); var createFragment = function(ul, index, count, reverse) { var length = ul.querySelectorAll('li').length; var fragment = document.createDocumentFragment(); var li; for (var i = 0; i < count; i ) { li = document.createElement('li'); li.className = 'mui-table-view-cell'; li[removed] = '第' (index 1) '个选项卡子项-' (length (reverse ? (count - i) : (i 1))); fragment.appendChild(li); } return fragment; }; }); })(mui); [removed]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值