zoukankan      html  css  js  c++  java
  • 多级菜单

    HTML

    <ul id="nav">
    	<li>
    		<h2><span>+</span>第一级菜单</h2>
    		<ul>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    		</ul>
    	</li>
        <li>
    		<h2><span>+</span>第一级菜单</h2>
    		<ul>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    		</ul>
    	</li>
    	<li>
    		<h2><span>+</span>第一级菜单</h2>
    		<ul>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    		</ul>
    	</li>
    	<li>
    		<h2><span>+</span>第一级菜单</h2>
    		<ul>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    		</ul>
    	</li>
    	<li>
    		<h2><span>+</span>第一级菜单</h2>
    		<ul>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    			<li>
    				<h2><span>+</span>第二级菜单</h2>
    				<ul>
    					<li>
    						<h2><span>+</span>第三级菜单</h2>
    						<ul>
    							<li>
    								<h2>第四级菜单</h2>
    							</li>
    						</ul>
    					</li>
    				</ul>
    			</li>
    		</ul>
    	</li>
    </ul>
    

    CSS

    ul,h2{
    	margin: 0;
    	padding: 0;
    }
    li{
    	list-style: none;
    }
    #nav {
    	border: 1px solid #333;
    	float: left;
    	padding: 5px 0;
    	background: #ccf;
    }
    #nav ul {
    	padding-left: 20px;
    	display: none;
    }
    #nav h2 {
    	font-size: 30px;
    	height: 50px;
    	line-height: 50px;
    	padding: 0 15px;
    	cursor: pointer;
    }
    h2:hover{
    	color: red;
    }
    .active1{
    	display: block;
    }
    

    JS

    var nav=document.getElementById('nav');
    var spans=nav.getElementsByTagName('span');
    for (var i=0;i<spans.length;i++) {
    	
    	//获得所有有子菜单的h2
    	var hs=spans[i].parentNode;
    	hs.onOff=true;
    	
    	//点击菜单
    	hs.onclick=function(){
    		//获取当前h2的父节点的父节点下的所有ul
    		var uls=this.parentNode.parentNode.getElementsByTagName("ul");
    		if(this.onOff){
    			for (var j=0;j<uls.length;j++) {
                    //关闭所有的ul
                    uls[j].style.display='none';
                    //改变所有的span的innerHTML:获取ul的父节点li下的第一个子节点h2下的第一个子节点span
     				uls[j].parentNode.children[0].children[0].innerHTML='+';
     				uls[j].parentNode.children[0].onOff=true;
                }
    			this.children[0].innerHTML='-';
    			this.nextElementSibling.style.display='block';
    			this.onOff=false;
    		}else{
    			this.children[0].innerHTML='+';
                this.nextElementSibling.style.display='none';
                this.onOff=true;
    		}
    	}
    }
    

      

  • 相关阅读:
    oracle游标
    PLSQL
    git移除target目录下已经提交的内容案例
    git全局配置
    [github]Windows系统下将本地仓库的项目上传到远程仓库(含仅单独上传更新文件情况)
    小试Python交互模式(Python Shell)与读文件操作报错(OSError)的解决办法
    C盘内存“侵略者”——Unity开发环境中GI Cache默认目录的修改
    Hibernate学习——Hibernate Tools for Eclipse Plugins的下载与安装
    博客开篇——应用Markdown编辑器呈现样式和内容
    pt-table-checksum使用dsn方式连接检测从库
  • 原文地址:https://www.cnblogs.com/yangxue72/p/8058366.html
Copyright © 2011-2022 走看看