• 多级菜单


    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;
    		}
    	}
    }
    

      

  • 相关阅读:
    delphi SysErrorMessage 函数和系统错误信息表 good
    Delphi中ShellExecute使用详解(详细解释10种显示状态)
    几个获取Windows系统信息的Delphi程序
    判断操作系统多久没有任何操作
    MVC4+WebApi+Redis Session共享练习(下)
    MVC4+WebApi+Redis Session共享练习(上)
    EntityFramework使用总结(与MVC4.0实现CURD操作)
    MVC3.0+knockout.js+Ajax 实现简单的增删改查
    基于Redis缓存的Session共享(附源码)
    Redis缓存服务搭建及实现数据读写
  • 原文地址:https://www.cnblogs.com/yangxue72/p/8058366.html
Copyright © 2020-2023  润新知