初始化bar页面和选项卡点击监听

例一代码段:

var barItemWebviewArray = [];
var title = document.getElementById("title");
mainWebview = plus.webview.currentWebview();//获取当前窗口的WebviewObject对象
var subpages = ['carNoInquiry.html','planNoInquiry.html','mine.html'];
			var subpage_style = {//除扫码外各个bar子页面显示格式
				top: '45px',
				bottom: '51px',				
				left: '0px',
				bounce: 'vertical',
				bounceBackground: '#f8f8f8'
			};

inittabitemWebviews(subpages);//初始化bar页面初始化bar页面,首个选项卡页面显示,其它均隐藏;
初始化bar页面,首个选项卡页面显示,其它均隐藏;
			function inittabitemWebviews(pages) {
				for (var i = 0; i < 3; i++) {
					barItemWebviewArray[i] = mui.preload({
						id: pages[i],
						url: pages[i],
						styles: subpage_style,
						waiting: {
							autoShow: false
						}
					});
					barItemWebviewArray[i].hide();
					mainWebview.append(barItemWebviewArray[i]);
				}
				barItemWebviewArray[0].show();
				curBarItemWebview = barItemWebviewArray[0];
			}


//选项卡点击事件
			function tapBaritem() {
				mui('.mui-bar-tab').on('tap', 'a', function(e) {
					var targetTab = this.getAttribute('href');
					//mui.toast(targetTab);
					if (targetTab == activeTab) {
						return;
					}
					//更换标题				
					title.innerHTML = this.querySelector('.mui-tab-label').innerHTML;
					//隐藏当前;
					plus.webview.hide(activeTab);
					//更改当前活跃的选项卡
					activeTab = targetTab;
					//显示目标选项卡
					//若为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",300);
					}
				});
			}


例二代码段:

var mainWebView; //当前主webview
var navtitle;
var curTabItem; //当前被选中tabitem
var barItemUrl = ['baritemHtml/home.html', 'baritemHtml/category.html', 'baritemHtml/xinyuandan.html', 'baritemHtml/cart.html', 'baritemHtml/mine.html'];
var barItemWebView = {}; //每个tabitem所对应显示的页面对象
navtitle = document.getElementById('nav-title');
mainWebView = plus.webview.currentWebview();



 //初始化每个tabitem所对应的页面
		function inittabitemWebviews() {
			for (var i = 0; i < barItemUrl.length; i++) {
				barItemWebView[i] = mui.preload({
					url: barItemUrl[i],
					id: barItemUrl[i],
					styles: {
						top: '44px',
						bottom: '51px',
						left: '0px',
						bounce: 'vertical',
						bounceBackground: '#DCDCDC'
					},
					waiting: {
		   				autoShow: false
		   			}
				});
//				if (i != 0) {
					barItemWebView[i].hide();
//				}
				mainWebView.append(barItemWebView[i]);
			}
			
			barItemWebView[0].show();
		}
		//为每个tabitem添加监听

		function addEventForTabitem() {
			mui('.mui-bar-tab').on('tap', '.mui-tab-item', function() {
				var tabitem = this;
				if (tabitem == curTabItem) {
					return;
				}
				curTabItem = tabitem;
				navtitle.innerText = tabitem.children[tabitem.children.length - 1].innerText;
				//设置将显示当前webview
				showCurWebView(tabitem.getAttribute('href'));
			});
		}
		
		//设置webview的切换显示的函数
		function showCurWebView(href) {
			var index = 0;
			for (var i = 0; i < barItemUrl.length; i++) {
				if (href == barItemUrl[i]) {
					index = i;
				} else {
					barItemWebView[i].hide();
				}
			}
			barItemWebView[index].show();
		}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值