JS三级可折叠菜单

.ASPX代码

ContractedBlock.gifExpandedBlockStart.gifCode
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="NavigateMenu.aspx.cs" Inherits="NavigateMenu" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>无标题页</title>
   
<script type="text/javascript" src="JScript.js" ></script>
   
<style type="text/css">
*
{
 margin
: 0px;
 padding
: 0px;
 border
:0px;
}
#nav
{
 width
: 600px;
 margin
: 0px;
 padding
: 0px;
 font-size
: 14px;
 line-height
: 30px;
}
#nav li
{
 width
: 180px;
 padding-left
: 20px;
 padding-bottom
: 1px;
 list-style-image
: none;
 list-style-type
: none;
 background-color
: #FFFFFF;
}
#nav a
{
 padding-left
: 20px;
 background-color
: #BFBFBF;
 display
: block;
 text-decoration
: none;
}
#nav a:hover 
{
 background-color
: #FF9175;
}
#nav li ul
{
 padding-top
: 1px;
 list-style-image
: none;
 list-style-type
: none;
}
#nav li li
{
 padding-left
: 0px;
}
#nav ul a
{
 background-color
: #EBEBEB;
}
.cx 
{
 display
:none;
 visibility
:hidden;
}
.ex 
{
 display
:inherit;
 visibility
:inherit;
}
</style>
<script type="text/javascript" >

  window.onload
=function(){
  statUp();
  }
</script>
</head>
<body>
    
<form id="form1" runat="server">
<div id="Parent">
<ul id="nav">
<li><href="javascript:void(0);" onclick="doMenu(this,'1')">菜单1</a>
 
<ul>
  
<li><href="javascript:void(0);">菜单1_1</a></li>
  
<li><href="javascript:void(0);">菜单1_2</a></li>
 
</ul>
</li>
<li><href="javascript:void(0);" onclick="doMenu(this,'1')">菜单2</a>
 
<ul>
  
<li><href="javascript:void(0);" onclick="doMenu(this,'2')" >菜单2_1</a>
  
<ul>
  
<li>菜单2_1_1</li>
  
<li>菜单2_1_2</li>
  
</ul>
  
</li>
  
<li><href="javascript:void(0);" onclick="doMenu(this,'2')">菜单2_2</a>
    
<ul>
  
<li>菜单2_2_1</li>
  
</ul>
  
</li>
 
</ul>
</li>
</ul>
</div>
    
</form>
</body>
</html>

js文件代码

ContractedBlock.gifExpandedBlockStart.gifCode
function doMenu(obj,strDeep){
 
var items=obj.parentNode.getElementsByTagName("ul"); //获取a 对象你节点li 下包含的 所有ul集合
 var itmUl;
 
var deeps=strDeep;  //strDeep 为当前菜单的级数
 if(items.length>0){
  itmUl
=items[0];
  alert(itmUl);
 }


 
if(itmUl.className!="ex"){
  cxAll();
//当前节点为关闭状态时,先执行关闭所有ul子菜单
  if(deeps=='2'){  //若要展开三级菜单当,还要将其二级父菜单展开
  itmUl.parentNode.parentNode.className="ex";
  }
  itmUl.className
="ex"//展开下级菜单
 }else{
  itmUl.className
="cx";
 }
}
function statUp(){
 cxAll();
 
var ulDom=document.getElementById("nav");
 
var items=ulDom.getElementsByTagName("ul");
}
function cxAll(){
 
var ulDom=document.getElementById("nav");
 
var items=ulDom.getElementsByTagName("ul");
 
for (var i=0;i<items.length;i++)
 {
  items[i].className
="cx";
 }

 

转载于:https://www.cnblogs.com/yinhaiming/archive/2009/02/13/1389993.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值