移動端MUI上拉加載列表、日期(公衆號)

MUI框架的上拉加載列表使用方法

MUI官方稱它輕量、原生、以iOS平臺UI爲基礎,補充部分Android平臺特有的UI控件,

開發工具指定是HBulider莫屬,然後新建Web項目,結構如下:
在這裏插入圖片描述
因爲你的項目裏要大量引入mui擴展插件的css/js,要下載這些文件,你可以再新建一個mui項目,這裏面有MUI所有的組件文件還有示例:
在這裏插入圖片描述
從這個模板裏面拿出你要的文件放進自己的項目:
在這裏插入圖片描述
然後開始造作吧,項目後端還沒通,所有用的假數據:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
    <title></title>
    <script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js" type="text/javascript" charset="utf-8"></script>
    <script src="js/jquery.js" type="text/javascript" charset="utf-8"></script>
    <script src="js/mui.min.js"></script>
    <script src="js/mui.picker.js"></script>
    <script src="js/mui.dtpicker.js"></script>
    <script src="js/mui.poppicker.js"></script>
    
    
    <link href="css/mui.min.css" rel="stylesheet"/>
    <link href="css/mui.picker.css" rel="stylesheet"/>
    <link href="css/mui.dtpicker.css" rel="stylesheet"/>
    <link href="css/mui.poppicker.css" rel="stylesheet"/>
    <script type="text/javascript" charset="utf-8">
      	mui.init();
    </script>
    <style type="text/css">
    	/*不要學我,樣式寫在外面,我這是示例*/
    	.timeBtn{
    		width: 100%;
    	}
    	#refreshContainer{
    		top: 100px;
    		height: 400px;
    		border-top: 1px solid #0062CC;
    		border-bottom: 1px solid #0062CC;
    	}
    	.mui-table-view-cell.mui-active{
			background-color: #0062CC;
		}
    </style>
</head>
<body>
	<button type="button" class="starttime timeBtn" id="starttime">開始日期</button>
	<button type="button" class="endtime timeBtn" id="endtime">結束日期</button> 
	<!-- 滾動容器 -->
	<div id="refreshContainer" class="mui-content mui-scroll-wrapper">
		  <div class="mui-scroll">
		    	<!--數據列表-->
			    <ul class="mui-table-view mui-table-view-chevron">
			      
			    </ul>
		  </div>
	</div>
	<script>
		// 日期組件
		document.getElementById('starttime').addEventListener('tap', function(){
		    option={"type":"date","beginYear":"1980","endYear":"2080"};
		     var picker = new mui.DtPicker(option);
		     picker.show(function(rs) {
		        document.getElementById('starttime').innerHTML = rs.text;
		     }); 
		},false);
		//結束時間
		document.getElementById('endtime').addEventListener('tap', function(){
		    option={"type":"date","beginYear":"1980","endYear":"2080"};
		    var picker = new mui.DtPicker(option);
		    picker.show(function(rs) {
		        document.getElementById('endtime').innerHTML = rs.text;
		    }); 
		},false);
		
		// 上拉加載
		mui.init({
			pullRefresh : {
			    container: '#refreshContainer',//待刷新區域標識,querySelector能定位的css選擇器均可,比如:id、.class等
			    up: {
			      height:50,//可選.默認50.觸發上拉加載拖動距離
			      auto:true,//可選,默認false.自動上拉加載一次
			      contentrefresh : "拼命加載...",//可選,正在加載狀態時,上拉加載控件上顯示的標題內容
			      contentnomore:'- 我是有底線的 -',//可選,請求完畢若沒有更多數據時顯示的提醒內容;
			      callback :pullfreshFun //必選,刷新函數,根據具體業務來編寫,比如通過ajax從服務器獲取新數據;
			    }
			}
		});
		var counter = 10    // 當前頁數
		function pullfreshFun () {
			var result = ""
			// ajax請求list數據  傳入counter頁數
			setTimeout(function () {
				for (var j = 0; j < counter; j++) {
					result += '<li class="mui-table-view-cell">'+counter+'</li>'	
				}
				$('#refreshContainer .mui-scroll .mui-table-view').append($(result))
				mui('#refreshContainer').pullRefresh().endPullupToRefresh((++counter>15));// 這個15是你獲取數據的總頁數,當你請求的頁數counter>你的總頁數(後臺獲取或者自己計算),則結束上拉加載
			}, 5000)
		}
	</script>
</body>
</html>

看一下效果:
在這裏插入圖片描述
壓縮完有些小,湊合看吧

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章