mui 底部导航菜单功能(原创)[通俗易懂]

mui 底部导航菜单功能(原创)[通俗易懂]复制下来就能用不能用就加下我的前端交流QQ群问下简单版 底部导航菜单切换 首页 9 消息 9 消息 mui.init({ subpages:[//先加载首页 { ur

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

mui 底部导航菜单功能(原创)[通俗易懂]

  

简单版

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>底部导航菜单切换</title>
		<link href="../../../css/mui.min.css" rel="stylesheet" />
		
	</head>
	<body>
		<nav class="mui-bar mui-bar-tab " id="nav">
			<a class="mui-tab-item mui-active" id="a1">
				<span class="mui-icon mui-icon-home"></span>
				<span class="mui-tab-label">首页</span>
			</a>
			<a class="mui-tab-item " id="a2">
				<span class="mui-icon mui-icon-email"><span class="mui-badge">9</span></span>
				<span class="mui-tab-label">消息</span>
			</a>
			<a class="mui-tab-item " id="a3">
				<span class="mui-icon mui-icon-email"><span class="mui-badge">9</span></span>
				<span class="mui-tab-label">消息</span>
			</a>
		</nav>
		<script src="../../../js/mui.min.js"></script>
		<script type="text/javascript" charset="utf-8">
			mui.init({
				    subpages:[//先加载首页
				    	{
					      url:'1.html',
					      id:'a1',
					      styles:{
					      	 top:'0px',
		        				bottom:'60px'
					      }
					    }
				   		
				    ],
				    preloadPages:[//缓存其他页面
					    {
					      url:'2.html',
					      id:'a2',
					      styles:{
					      	 top:'0px',
		        			bottom:'60px'
					      }
					    },
					    {
					      url:'3.html',
					      id:'a3',
					      styles:{
					      	 top:'0px',
		        			bottom:'60px'
					      }
					    }
				 	]
				    
				});
			mui.plusReady(function(){ 
				// 获取所有Webview窗口
				var winAll=plus.webview.all();//获取所有窗体
				//console.log(JSON.stringify(winAll)) 
				var a1,a2,a3
				mui("#nav").on("tap","#a1",function(){//点击触发 
					a1=plus.webview.getWebviewById("a1");
					console.log(JSON.stringify(a1)) 
					a1.show()
					a2.hide()//这一步必须有
					a3.hide()//这一步必须有
				})
				mui("#nav").on("tap","#a2",function(){//点击触发
					a2=plus.webview.getWebviewById("a2");
					a2.show()
					
				})
				mui("#nav").on("tap","#a3",function(){//点击触发
					a3=plus.webview.getWebviewById("a3");
					a3.show()
					
				})
			});
		</script>
		
	</body>
</html>

专业版

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>底部导航菜单切换(专业写法)</title>
		<link href="../../../css/mui.min.css" rel="stylesheet" />
		
	</head>
	<body>
		<nav class="mui-bar mui-bar-tab " id="nav">
			
		</nav>
		<script src="../../../js/jquery.js"></script>
		<script src="../../../js/mui.min.js"></script>
		
		<script type="text/javascript" charset="utf-8">
		    var hrefArr=[
						    {"title":"首页","id":"a1","href":"1.html","icon":"mui-icon-home"},
						    {"title":"消息也","id":"a2","href":"2.html","icon":"mui-icon-email"},
						    {"title":"个人中心","id":"a3","href":"3.html","icon":"mui-icon-contact"}
					    ]//要跳转的  页面跟他的ID要先写好
			var navFirst=[],navOther=[],viewObj=[]//第一个页面数据  其他页面数据 窗体对象
			
			mui.plusReady(function(){ 
				navInit()
				clickFun(navFirst[0].id,plus.webview.getWebviewById(navFirst[0].id))
				mui("#nav").on("tap","a",function(e){
					var id=$(this).attr("id")
					var obj=plus.webview.getWebviewById(id)
					clickFun(id,obj)
				})
			});
			function clickFun(id,obj){
				if(id==navFirst[0].id){
						$.each(navOther,function(i,v){
							var otherObj=plus.webview.getWebviewById(v.id)
							otherObj.hide()
						})
					}
				obj.show()
			}
			//初始化html
			function navInit(){
				var html=""
				$.each(hrefArr,function(i,v){
					if(i==0){
						
					}
					html+='<a class="mui-tab-item'+((i==0)?" mui-active":"")+' " id="'+v.id+'">'+
							'<span class="mui-icon '+v.icon+'"></span>'+
							'<span class="mui-tab-label">'+v.title+'</span>'+
						  '</a>'
				})
				$("#nav").html(html)
				$.each(hrefArr,function(i,v){ 
					var arrI={"url":v.href,"id":v.id,styles:{top:'0px',bottom:'60px' }}
					if(i==0){//第一个页面
						navFirst.push(arrI)
					}else{//缓存住的页面
						navOther.push(arrI)
					}
				})
				mui.init({
				    subpages:navFirst,//先加载首页
				    preloadPages:navOther//缓存其他页面
				});
				
			}
			//点击事件初始化
			
		</script>
		
	</body>
</html>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159430.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 分布式系统常见问题总结[通俗易懂]

    分布式系统常见问题总结[通俗易懂]秒杀系统架构优化思路一、秒杀业务为什么难做1)im系统,例如qq或者微博,每个人都读自己的数据(好友列表、群列表、个人信息);2)微博系统,每个人读你关注的人的数据,一个人读多个人的数据;3)秒杀系统,库存只有一份,所有人会在集中的时间读和写这些数据,多个人读一个数据。例如:小米手机每周二的秒杀,可能手机只有1万部,但瞬时进入的流量可能是几百几千万。又例如:12306抢票,…

    2022年5月20日
    40
  • unittest自动化测试框架_unittest批量加载用例

    unittest自动化测试框架_unittest批量加载用例目录一、unittest简介二、基本概念三、unittest基础使用四、unitteest提供的各种断言方式五、unittest测试用例跳过执行六、总结一、unittest简介测试框架-unittest,相当于是一个python版的junit。python里面的单元测试框架除了unittest,还有一个pytest框架,这个实际上用的比较少,后面有空再继续介绍和分享。unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的

    2022年10月14日
    2
  • webpack dev server_webpackdevserver配置

    webpack dev server_webpackdevserver配置前言当我们使用webpack打包时,发现每次更新了一点代码,都需要重新打包,这样很麻烦,我们希望本地能搭建一个服务器,然后写入新的代码能够自动检测出来,这时候就需要用到webpack-dev-ser

    2022年7月31日
    19
  • 生信入门转录组和可视化学习捷径

    生信入门转录组和可视化学习捷径转录组分析是目前应用最广的高通量测序分析技术之一。常见设计是不同样品之间比较,寻找差异基因、标志基因、协同变化基因、差异剪接和新转录本,并进行结果可视化、功能注释和网络分析等。转录组的测序…

    2022年9月26日
    1
  • c++ stringstream(老好用了)

    c++ stringstream(老好用了)v前言:   以前没有接触过stringstream这个类的时候,常用的字符串和数字转换函数就是sscanf和sprintf函数。开始的时候就觉得这两个函数应经很叼了,但是毕竟是属于c的。c++中引入了流的概念,通过流来实现字符串和数字的转换方便多了。在这里,总结之前的,并介绍新学的。v常见格式串:    %%印出百分比符号,不转换。  %c整数转成对应的ASCII字元。  %d整数转

    2022年6月12日
    47
  • pycharm mac 激活码【2021最新】

    (pycharm mac 激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html4M7HSKPBXS-eyJsa…

    2022年3月29日
    258

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号