mui底部选项卡的两种模式
div模式
DIV模式是将所有子页面的内容,分别放置到主页不同的DIV中,当我们点击主页的不同选项卡时,切换不同DIV的显示。 这种方式显然要比加载子页的方式快很多,但是也显然不能承载很多布局的页面,毕竟要在一个主页中写入所有子页面的代码,显得不太现实。
<header class="mui-bar mui-bar-nav">
<a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
<h1 class="mui-title">底部选项卡切换(Div模式)</h1>
</header>
<nav class="mui-bar mui-bar-tab">
<a class="mui-tab-item mui-active" href="#page1">
<span class="mui-icon mui-icon-home"></span>
<span class="mui-tab-label">首页</span>
</a>
<a class="mui-tab-item" href="#page2">
<span class="mui-icon mui-icon-phone"></span>
<span class="mui-tab-label">电话</span>
</a>
<a class="mui-tab-item" href="#page3">
<span class="mui-icon mui-icon-email"></span>
<span class="mui-tab-label">邮件</span>
</a>
<a class="mui-tab-item" href="#page4">
<span class="mui-icon mui-icon-gear"></span>
<span class="mui-tab-label">设置</span>
</a>
</nav>
<div class="mui-content">
<div id="page1" class="mui-control-content mui-active">
这是第一个页面
</div>
<div id="page2" class="mui-control-content">
这是第二个页面
</div>
<div id="page3" class="mui-control-content">
这是第三个页面
</div>
<div id="page4" class="mui-control-content">
这是第四个页面
</div>
</div>
webview模式
WebView模式则是将所有子页面都写入到不同的子页面中,再通过主页连接到一起,点击不同的选项卡 ,加载不同的子页面,显然这种方式更符合我们的预期和要求。
此模式只能在模拟器和真机上运行,
<body>
<div class="mui-content">
</div>
<nav id="bar" class="mui-bar mui-bar-tab">
<a class="mui-tab-item mui-active" href="activity/actlist.html" data-id="task">
<span class="mui-icon mui-icon-compose"></span>
<span class="mui-tab-label">待办</span>
</a>
<a class="mui-tab-item" href="work.html" data-id="work">
<span class="mui-icon mui-icon-chatboxes"></span>
<span class="mui-tab-label">工作</span>
</a>
<a class="mui-tab-item" href="my/homepage.html" data-id="mysetting">
<span class="mui-icon mui-icon-gear-filled"></span>
<span class="mui-tab-label">我的</span>
</a>
</nav>
</body>
js部分
<script src="../js/mui.min.js"></script>
<script>
mui.init();
mui.plusReady(function() {
var self = plus.webview.currentWebview();
var current = '';
var styles = {
top: '0',
bottom: '51px'
};
var tabsConfig = {
task: {
url: 'activity/actlist.html',
styles: styles,
default: true
},
work: {
url: 'work.html',
styles: styles
},
mysetting: {
url: 'my/homepage.html',
styles: styles
}
};
var tabs = {};
for (id in tabsConfig) {
tabs[id] = plus.webview.create(tabsConfig[id].url, id, tabsConfig[id].styles);
if (tabsConfig[id]['default']) {
self.append(tabs[id]);
current = id;
}
}
mui('#bar').on('tap', 'a', function(e) {
if (current == this.dataset.id) {
return;
}
tabs[this.dataset.id].show();
tabs[current].hide();
current = this.dataset.id;
});
});
</script>
参考博客:
MUI框架开发HTML5手机APP(二)–页面跳转传值&底部选项卡切换
一个底部选项卡的实现(webview模式)
浙公网安备 33010602011771号