mui框架选项卡问题,急!!!!

逍遥生-前端 2017-08-14 10:19:44
下面是我首页的代码,首次进入选项卡正常点击,也正常显示,可以实现当前子页面隐藏,点击的对应页面显示,但是当我退出,然后回到首页时,选项卡按钮会时不时失灵,比如退出登录,然后点击账本的时候显示的仍然是首页的页面,当我点击“我的”按钮的时候,对应的子页面会显示,再点击“账本”的时候账本对应的选项卡又可以正常显示了,是什么问题呢?急!!!

<!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">
<script src="js/mui.min.js"></script>
<script type="text/javascript" src="js/jquery-2.1.0.js"></script>
<script type="text/javascript" src="js/common.js"></script>
<script type="text/javascript" src="controll/immersed.js"></script>

<script type="text/javascript" src="controll/index.js"></script>
<style>
html,
body {
background-color: #efeff4;
}
</style>
</head>

<body>

<nav class="mui-bar mui-bar-tab ">
<a class="mui-tab-item mui-active" href="view/home.html">
<span class="mui-icon iconfont icon-shouye"></span>
<span class="mui-tab-label">首页</span>
</a>
<a class="mui-tab-item" href="view/zhang.html">
<span class="mui-icon iconfont icon-zhangben"></span>
<span class="mui-tab-label">账本</span>
</a>
<a class="mui-tab-item" href="view/activit.html">
<span class="mui-icon iconfont icon-jiaoxuehuodong"></span>
<span class="mui-tab-label">活动</span>
</a>
<a class="mui-tab-item" href="view/my.html">
<span class="mui-icon iconfont icon-wode"></span>
<span class="mui-tab-label">我的</span>
</a>
</nav>

<script type="text/javascript" charset="utf-8">
//mui初始化
mui.init();
// console.log(1)
// var timeInter=setInterval(function(){
// if (localStorage.getItem("reload")==1) {
// console.log(localStorage.getItem("reload"));
// localStorage.setItem("reload","");
// location.reload();
// }
//// console.log(localStorage.getItem("reload"));
// });

var subpages = ['view/home.html', 'view/activit.html', 'view/zhang.html', 'view/my.html'];
var subpage_style = {
top: '0px',
bottom: '51px'
};

var aniShow = {};

//创建子页面,首个选项卡页面显示,其它均隐藏;
mui.plusReady(function() {
var self="";
self = plus.webview.currentWebview();
for (var i = 0; i < 4; i++) {
var temp = {};
var sub = plus.webview.create(subpages[i], subpages[i], subpage_style);
if (i > 0) {
sub.hide();
}else{
temp[subpages[i]] = "true";
mui.extend(aniShow,temp);
}
self.append(sub);
}
});
//当前激活选项
var activeTab = subpages[0];
//选项卡点击事件
mui('.mui-bar-tab').on('tap', 'a', function(e) {
var targetTab = this.getAttribute('href');
if (targetTab == activeTab) {
return;
}
//显示目标选项卡
//若为iOS平台或非首次显示,则直接显示
if(mui.os.ios||aniShow[targetTab]){
plus.webview.show(targetTab);
}else{
//否则,使用fade-in动画,且保存变量
var temp = {};
temp[targetTab] = "true";
mui.extend(aniShow,temp);
plus.webview.show(targetTab,"fade-in",100);
}
//隐藏当前;
plus.webview.hide(activeTab);
//更改当前活跃的选项卡
activeTab = targetTab;
// plus.webview.show(targetTab);
});
//自定义事件,模拟点击“首页选项卡”
document.addEventListener('gohome', function() {
var defaultTab = document.getElementById("defaultTab");
//模拟首页点击
mui.trigger(defaultTab, 'tap');
//切换选项卡高亮
var current = document.querySelector(".mui-bar-tab>.mui-tab-item.mui-active");
if (defaultTab !== current) {
current.classList.remove('mui-active');
defaultTab.classList.add('mui-active');
}
});
</script>
</body>

</html>
...全文
445 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
usecf 2017-08-14
  • 打赏
  • 举报
回复
你打印下log console.log 看看你点击事件获取的tab索引对不对

39,084

社区成员

发帖
与我相关
我的任务
社区描述
HTML5是构建Web内容的一种语言描述方式。HTML5是互联网的下一代标准,是构建以及呈现互联网内容的一种语言方式.被认为是互联网的核心技术之一。
社区管理员
  • HTML5社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧