国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

MUI 上拉刷新/下拉加載功能實例代碼

2024-05-06 16:36:32
字體:
來源:轉載
供稿:網友

新聞信息列表必備的功能,支持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方面的擴展和內容

 

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 上拉刷新/下拉加載功能實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 北京市| 通江县| 安远县| 富阳市| 休宁县| 柘城县| 玛纳斯县| 阿尔山市| 普陀区| 涟源市| 民县| 贡觉县| 固安县| 达日县| 乃东县| 霍山县| 神池县| 益阳市| 泗阳县| 烟台市| 乐亭县| 璧山县| 澜沧| 临澧县| 盐边县| 吐鲁番市| 安义县| 墨竹工卡县| 正阳县| 佛坪县| 健康| 仁布县| 米林县| 招远市| 博客| 乳山市| 旅游| 印江| 杨浦区| 容城县| 岐山县|