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>
...全文
471 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
usecf 2017-08-14
  • 打赏
  • 举报
回复
你打印下log console.log 看看你点击事件获取的tab索引对不对
这是一款基于mui框架制作的选项卡切换和下拉刷新加载数据列表代码,手机移动端选项卡切换插件,触屏滑动下拉刷新代码。 js代码 [removed][removed] [removed][removed] [removed][removed] [removed] mui.init(); (function($) { //阻尼系数 var deceleration = mui.os.ios?0.003:0.0009; $('.mui-scroll-wrapper').scroll({ bounce: false, indicators: true, //是否显示滚动条 deceleration:deceleration }); $.ready(function() { //循环初始化所有下拉刷新,上拉加载。 $.each(document.querySelectorAll('.mui-slider-group .mui-scroll'), function(index, pullRefreshEl) { $(pullRefreshEl).pullToRefresh({ down: { callback: function() { var self = this; setTimeout(function() { var ul = self.element.querySelector('.mui-table-view'); ul.insertBefore(createFragment(ul, index, 10, true), ul.firstChild); self.endPullDownToRefresh(); }, 1000); } }, up: { callback: function() { var self = this; setTimeout(function() { var ul = self.element.querySelector('.mui-table-view'); ul.appendChild(createFragment(ul, index, 5)); self.endPullUpToRefresh(); }, 1000); } } }); }); var createFragment = function(ul, index, count, reverse) { var length = ul.querySelectorAll('li').length; var fragment = document.createDocumentFragment(); var li; for (var i = 0; i < count; i ) { li = document.createElement('li'); li.className = 'mui-table-view-cell'; li[removed] = '第' (index 1) '个选项卡子项-' (length (reverse ? (count - i) : (i 1))); fragment.appendChild(li); } return fragment; }; }); })(mui); [removed]

39,118

社区成员

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

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