全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

MUI 上拉刷新/下拉加载功能实例代码

新闻信息列表必备的功能,支持Table,Ul等列表.

以下是DIV版本,在安卓端或者ios端必须使用双webview模式,传送门:http://dev.dcloud.net.cn/mui/pulldown/

<!--下拉刷新容器-->
<div id="pullrefresh" class="mui-content mui-scroll-wrapper">
 <div class="mui-scroll">
  <!--数据列表-->
  <ul class="mui-table-view">
  </ul>
 </div>
</div>
<script type="text/javascript">
 mui.init
 ({
 pullRefresh: 
 {
  container: '#pullrefresh',
  down: {
  callback: pulldownRefresh
  },
  up: {
  contentrefresh: '正在加载...',
  callback: pullupRefresh
  }
 }
 });
 /*
 * 下拉刷新具体业务实现
 */
 function pulldownRefresh() 
 {
 setTimeout(function() 
 {
  var table = document.body.querySelector('.mui-table-view');
  var cells = document.body.querySelectorAll('.mui-table-view-cell');
  //模拟数据
  for (var i = cells.length, len = i + 3; i < len; i++) {
  var li = document.createElement('li');
  li.className = 'mui-table-view-cell';
  li.innerHTML = '<a class="mui-navigate-right">Item ' + (i + 1) + '</a>';
  //下拉刷新,新纪录插到最前面;
  table.insertBefore(li, table.firstChild);
  }
  mui('#pullrefresh').pullRefresh().endPulldownToRefresh(); //refresh completed
 }, 1500);
 }
 var count = 0;
 /*
 * 上拉加载具体业务实现
 */
 function pullupRefresh() 
 {
 setTimeout(function() {
  mui('#pullrefresh').pullRefresh().endPullupToRefresh((++count > 2)); //参数为true代表没有更多数据了。
  var table = document.body.querySelector('.mui-table-view');
  var cells = document.body.querySelectorAll('.mui-table-view-cell');
  for (var i = cells.length, len = i + 20; i < len; i++) {
  var li = document.createElement('li');
  li.className = 'mui-table-view-cell';
  li.innerHTML = '<a class="mui-navigate-right">Item ' + (i + 1) + '</a>';
  table.appendChild(li);
  }
 }, 1500);
 }
 if (mui.os.plus) {
 mui.plusReady(function() {
  setTimeout(function() {
  mui('#pullrefresh').pullRefresh().pullupLoading();
  }, 1000);
 });
 } else 
 { 
 mui.ready(function() {
  mui('#pullrefresh').pullRefresh().pullupLoading();
 });
 }
</script>

 个人心得

1、手动加载loading,并且会立即调用[下拉刷新]绑定的函数

mui('#pullrefresh').pullRefresh().pullupLoading(); //使用这个之后,自动会加载[下拉刷新]绑定的函数

2、停止上拉刷新和下拉加载的loading

mui('#pullrefresh').pullRefresh().endPullupToRefresh(num >= cnt); //参数可以为返回true/false的表达式
mui('#pullrefresh').pullRefresh().endPulldownToRefresh();

3、初始化

初始化时通常要将原数据列表清空,如:$("#mui-table-view").html("");

那么请务必将以下代码放置在清空代码之后.这和scroll的滚动性质有关

mui('#pullrefresh').pullRefresh().refresh(true);  //恢复滚动
mui('#pullrefresh').pullRefresh().scrollTo(0,0,100); //滚动置顶

4、Iscroll方面的扩展和内容

https://www./article/111090.htm

5 Vue使用

<template>
 <div>
  <header class="mui-bar mui-bar-nav">
   <button @click="model" class=" mui-btn mui-btn-blue mui-btn-link mui-btn-nav mui-pull-left"><span class="mui-icon mui-icon-left-nav"></span>{{ modelName }}</button>
   <h1 class="mui-title">笑话大全</h1>
  </header>
  <div class="mui-content mui-scroll-wrapper" id="pullrefresh" >
   <div class="mui-scroll">
    <div class="mui-card" v-for="item in items">
      <div class="mui-card-header mui-card-media" style="">
      <div class="mui-card-content-inner">
        <p style="color: #333;">{{ item.content }}</p>
       </div>
      </div>
      <div class="mui-card-content" v-if="item.url">
       <img :src=" item.url " width="100%" height="100%" draggable="false"/> 
      </div>
      <div class="mui-card-footer">
       Posted on {{ item.updatetime }}
      </div>
    </div>
   </div>
  </div>
 </div>
</template>
<script>
export default {
 data () {
 return { 
   items:[],
   page :1,
   pagesize:5,
   count:0,
   modelName:"图文"
 };
 },
 methods : {
  getJoke () {
   let self = this;  
   var model = self.modelName == "图文" ? "pic" : ""; 
   $.ajax({
    type:"get",
    url:`http://localhost:8090?${model}&page=${self.page}&pagesize=${self.pagesize}`, 
    success (data) {
     let json = JSON.parse(data).result.data;
     self.items = self.items.concat(json); // 合并并且返回一个新数组
     self.page += 1;    
     self.count += 10;
     mui('#pullrefresh').pullRefresh().endPullupToRefresh(self.count >= 1000);
    }
  })
  },
  model () {
   this.modelName = this.modelName == "图文" ? "文字" : "图文";
   this.items = [];
   this.getJoke(); 
  },
  pulldownRefresh () {
   setTimeout(() => {
    mui('#pullrefresh').pullRefresh().endPulldownToRefresh();
   },1500)
  },
  pullupRefresh () {
   this.getJoke();
  }
 },
 created () {
  let self = this;
 mui.ready(function(){
  mui.init
  ({
   pullRefresh: 
   {
    container: '#pullrefresh',
    down: {
    callback: self.pulldownRefresh
    },
    up: {
    contentrefresh: '正在加载...',
    callback: self.pullupRefresh
    }
   } 
  }); 
  self.getJoke(); 
 })
 }
};
</script>
<style lang="css" scoped>
 .mui-card:nth-last-child(1){margin-bottom:70px;}
 .mui-card-header>img:first-child{width:100%;height: 100%;}
 .mui-pull-bottom-pocket{position:inherit}
</style>

以上所述是小编给大家介绍的MUI 上拉刷新/下拉加载功能实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# mui  # 上拉刷新  # 下拉加载  # js返回上一页并刷新代码整理  # MUI实现上拉加载和下拉刷新效果  # mui back 返回刷新页面的实例  # 加载  # 绑定  # 小编  # 正在加载  # 清空  # 在此  # 给大家  # 要将  # 置顶  # 所述  # 这和  # 使用这个  # 给我留言  # 最前面  # 感谢大家  # 笑话大全  # 疑问请  # 有任何  # 插到  # 传送门 


相关文章: 独立制作一个网站多少钱,建立网站需要花多少钱?  网站建设制作需要多少钱费用,自己做一个网站要多少钱,模板一般多少钱?  c# 服务器GC和工作站GC的区别和设置  官网自助建站平台指南:在线制作、快速建站与模板选择全解析  唐山网站制作公司有哪些,唐山找工作哪个网站最靠谱?  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  建站之星如何通过成品分离优化网站效率?  存储型VPS适合搭建中小型网站吗?  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  如何设置并定期更换建站之星安全管理员密码?  企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?  简单实现Android文件上传  免费ppt制作网站,有没有值得推荐的免费PPT网站?  制作宣传网站的软件,小红书可以宣传网站吗?  建站之星后台管理:高效配置与模板优化提升用户体验  电商网站制作公司有哪些,1688网是什么意思?  怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?  成都响应式网站开发,dw怎么把手机适应页面变成网页?  广州美橙建站如何快速搭建多端合一网站?  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  重庆市网站制作公司,重庆招聘网站哪个好?  如何在阿里云通过域名搭建网站?  网站制作软件有哪些,制图软件有哪些?  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  Swift中swift中的switch 语句  如何选择高效稳定的ISP建站解决方案?  动图在线制作网站有哪些,滑动动图图集怎么做?  建站主机数据库如何配置才能提升网站性能?  如何选择网络建站服务器?高效建站必看指南  深圳 网站制作,深圳招聘网站哪个比较好一点啊?  c# F# 的 MailboxProcessor 和 C# 的 Actor 模型  名字制作网站免费,所有小说网站的名字?  如何零成本快速生成个人自助网站?  平台云上自主建站:模板化设计与智能工具打造高效网站  金*站制作公司有哪些,金华教育集团官网?  如何在阿里云服务器自主搭建网站?  如何快速搭建支持数据库操作的智能建站平台?  微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?  已有域名和空间如何搭建网站?  微信推文制作网站有哪些,怎么做微信推文,急?  昆明网站制作哪家好,昆明公租房申请网上登录入口?  设计网站制作公司有哪些,制作网页教程?  如何在服务器上三步完成建站并提升流量?  建站之星下载版如何获取与安装?  高端网站建设与定制开发一站式解决方案 中企动力  如何用景安虚拟主机手机版绑定域名建站?  代刷网站制作软件,别人代刷火车票靠谱吗?  韩国服务器如何优化跨境访问实现高效连接?  广州网站建站公司选择指南:建站流程与SEO优化关键词解析 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。