前 言 MUI是一款最接近原生APP體驗的高性能前端框架,它的比較重要的功能是:下拉刷新、側滑導航、滑動觸發操作菜單和頂部(底部)選項卡等 最近用MUI做手機app應用的時候,遇到的小bug。順便研究了一下這個tab-top-webview-main,這裡給大家分享一下。 1主頁代碼 2子頁代碼 3 ...
前 言
MUI是一款最接近原生APP體驗的高性能前端框架,它的比較重要的功能是:下拉刷新、側滑導航、滑動觸發操作菜單和頂部(底部)選項卡等
最近用MUI做手機app應用的時候,遇到的小bug。順便研究了一下這個tab-top-webview-main,這裡給大家分享一下。
1主頁代碼
<!doctype html> <html> <head> <meta charset="UTF-8"> <title></title> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /> <link href="css/mui.min.css" rel="stylesheet" /> <style type="text/css"> .d1{ width: 100%; height: 50px; text-align: center; line-height: 50px; background-color: #CCCCCC; } </style> </head> <body> <div class="d1">我是div1,下麵是插入的子頁面</div> <!--我們將在這個div下邊插入子頁面--> </body> <script src="js/mui.min.js"></script> <script type="text/javascript"> mui.init({ subpages:[{ //下邊是初始化,然後這個頁面顯示我們將插入的頁面 url:"tab-top-webview-main.html", id:"tab-top-webview-main.html", styles:{ top:"50px", bottom:"0px" } }] }) </script> </html>
2子頁代碼
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Hello MUI</title> <meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1,user-scalable=no"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> <link rel="stylesheet" href="css/mui.min.css"> </head> <body> <div class="mui-content"> <div id="slider" class="mui-slider mui-fullscreen"> <div id="sliderSegmentedControl" class="mui-scroll-wrapper mui-slider-indicator mui-segmented-control mui-segmented-control-inverted"> <div class="mui-scroll"> <a class="mui-control-item mui-active" href="#item1mobile" data-wid="tab-top-subpage-1.html"> 推薦 </a> <a class="mui-control-item" href="#item2mobile" data-wid="tab-top-subpage-2.html"> 熱點 </a> </div> </div> </div> </div> <script src="js/mui.min.js"></script> <script src="js/webviewGroup.js" type="text/javascript" charset="utf-8"></script> <script> mui.init(); mui.plusReady(function() { var group = new webviewGroup("tab-top-webview-main.html", { items: [{ id: "tab-top-subpage-1.html", //這是子頁1的路徑 url: "tab-top-subpage-1.html", extras: {} }, { id: "tab-top-subpage-2.html", //這是子頁2的路徑 url: "tab-top-subpage-2.html", extras: {} }], onChange: function(obj) { var c = document.querySelector(".mui-control-item.mui-active"); if(c) { c.classList.remove("mui-active"); } document.querySelector(".mui-scroll .mui-control-item:nth-child(" + (parseInt(obj.index) + 1) + ")").classList.add("mui-active"); } }); mui(".mui-scroll").on("tap", ".mui-control-item", function(e) { var wid = this.getAttribute("data-wid"); group.switchTab(wid); }); }); mui.back = function() { var _self = plus.webview.currentWebview(); _self.close("auto"); } </script> </body> </html>
3代碼解釋
var group = new webviewGroup("tab-top-webview-main.html", {
items: [{
id: "tab-top-subpage-1.html", //這是子頁1的路徑
url: "tab-top-subpage-1.html",
extras: {}
}, {
id: "tab-top-subpage-2.html", //這是子頁2的路徑
url: "tab-top-subpage-2.html",
extras: {}
}]
})
1、子頁選項卡的超鏈接a的data-wid=""屬性需要設置為對應子頁選項卡路徑。
<a class="mui-control-item mui-active" href="#item1mobile" data-wid="tab-top-subpage-1.html"> 推薦 </a>
2、這裡,new webviewGroup("tab-top-webview-main.html",{}) 第一個參數需要傳入一個頁面的id。需要註意的是,這個頁面id 就是我們包含頂部選項卡的頁面,也就是當前我們這段js所在的頁面
new webviewGroup("tab-top-webview-main.html", {}
3、 items數組中傳入的是子頁對應選項卡該導入的子頁面的id,有幾個子頁就添加幾個子頁,中間用逗號分隔
大家如果還有別的需求,可以去MUI網站上查找幫助文檔 http://dev.dcloud.net.cn/mui/,還有很多小功能,我會陸續更新的~~~