本文实例讲述了JS三级可折叠菜单实现方法。分享给大家供大家参考,具体如下:
.ASPX代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="NavigateMenu.aspx.cs" Inherits="NavigateMenu" %>无标题页 *{ 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; }
js文件代码:
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
更多关于Javascript相关内容感兴趣的读者可查看本站专题:《Javascript查找算法技巧总结》、《Javascript动画特效与技巧汇总》、《Javascript错误与调试技巧总结》、《Javascript数据结构与算法技巧总结》、《Javascript遍历算法与技巧总结》及《Javascript数学运算用法总结》
希望本文所述对大家Javascript程序设计有所帮助。



