1. 程式人生 > >MUI 如何實現側滑選單及其主體部分上下滑動

MUI 如何實現側滑選單及其主體部分上下滑動

在MUI文件的側滑選單介紹裡沒有說明如何實現側滑,而MUI側滑選單預設是沒有上下滑動功能的,需要啟用。

1、首先在 class="mui-scroll-wrapper" 的元素上新增ID:

<!-- 側滑導航根容器 -->
<div class="mui-off-canvas-wrap mui-draggable">
  <!-- 選單容器 -->
  <aside class="mui-off-canvas-left">
    <div id="offCanvasSideScroll" class="mui-scroll-wrapper">
      <div class="mui-scroll">
        <!-- 選單具體展示內容 -->
        ...
      </div>
    </div>
  </aside>
  <!-- 主頁面容器 -->
  <div class="mui-inner-wrap">
    <!-- 主頁面標題 -->
    <header class="mui-bar mui-bar-nav">
      <a class="mui-icon mui-action-menu mui-icon-bars mui-pull-left"></a>
      <h1 class="mui-title">標題</h1>
    </header>
    <div id="offCanvasContentScroll" class="mui-content mui-scroll-wrapper">
      <div class="mui-scroll">
        <!-- 主介面具體展示內容 -->
        ...
      </div>
    </div>  
  </div>
</div>

從上面例子可以看出,側滑選單和主體部分都添加了ID。

分別為:offCanvasSideScroll、offCanvasContentScroll

2、其次在JS裡面啟用:

mui('#offCanvasSideScroll').scroll();
mui('#offCanvasContentScroll').scroll();

大功告成,現在超過高度即可進行下滑了。注意是超過高度!就像瀏覽器一樣,如果“ 主介面具體展示內容”沒有超出範圍,是沒有下滑功能的。

完整程式碼:

<!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://dev.dcloud.net.cn/mui/dist/js/mui.min.js"></script>
    <link href="http://dev.dcloud.net.cn/mui/dist/css/mui.min.css" rel="stylesheet"/>
    <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
    <style type="text/css">
    	body{
    		background-color: #000000;
    	}
    	.mui-off-canvas-wrap{
    		max-width: 720px;
    		margin: 0 auto;
    	}
    </style>
</head>
<body>
	<!-- 側滑導航根容器 -->  
	<div class="mui-off-canvas-wrap mui-draggable">  
	  <!-- 選單容器 -->  
	  <aside class="mui-off-canvas-left">  
	    <div id="offCanvasSideScroll" class="mui-scroll-wrapper">  
	      <div class="mui-scroll">  
	        <!-- 選單具體展示內容 -->  
	        <div style="height:1000px">
	        	
	        </div>
	      </div>  
	    </div>  
	  </aside>  
	  <!-- 主頁面容器 -->  
	  <div class="mui-inner-wrap">  
	    <!-- 主頁面標題 -->  
	    <header class="mui-bar mui-bar-nav">  
	      <a id="left-menu" class="mui-icon mui-action-menu mui-icon-bars mui-pull-left"></a>  
	      <h1 class="mui-title">標題</h1>  
	    </header>  
	    <div id="offCanvasContentScroll" class="mui-content mui-scroll-wrapper">  
	      <div class="mui-scroll">  
	        <!-- 主介面具體展示內容 -->  
	        <div style="height:1000px">
	        	
	        </div>
	      </div>  
	    </div>    
	  </div>  
	</div>
	
	<script type="text/javascript" charset="utf-8">
		$("#left-menu").on('tap', function (event) {
			mui('.mui-off-canvas-wrap').offCanvas('show');
		});
		
		window.onload = function(){
	      	mui('#offCanvasSideScroll').scroll();  
			mui('#offCanvasContentScroll').scroll(); 
		}
    </script>
</body>
</html>