JavaScript+CSS无限极分类代码

CSS

{text-decoration:none;}
a,a:visited 
{color:#000;background:inherit;}
body 
{margin:0;padding:20px;font:12px tahoma,宋体,sans-serif;}
dt 
{font-size:22px;font-weight:bold;margin:0 0 0 15px;}
dd 
{margin:0 0 0 15px;}
h4 
{margin:0;padding:0;font-size:18px;text-align:center;}
{margin:0;padding:0 0 0 18px;}
p a,p a:visited 
{color:#00f;background:inherit;}

/*CNLTreeMenu Start*/
.CNLTreeMenu img.s 
{cursor:pointer;vertical-align:middle;}
.CNLTreeMenu ul 
{padding:0;}
.CNLTreeMenu li 
{list-style:none;padding:0;}
.Closed ul 
{display:none;}
.Child img.s 
{background:none;cursor:default;}

#CNLTreeMenu1 ul 
{margin:0 0 0 17px;}
#CNLTreeMenu1 img.s 
{width:20px;height:15px;}
#CNLTreeMenu1 .Opened img.s 
{background:url(skin1/opened.gif) no-repeat 0 0;}
#CNLTreeMenu1 .Closed img.s 
{background:url(skin1/closed.gif) no-repeat 0 0;}
#CNLTreeMenu1 .Child img.s 
{background:url(skin1/child.gif) no-repeat 3px 5px;}

#CNLTreeMenu2 ul 
{margin:0 0 0 17px;}
#CNLTreeMenu2 img.s 
{width:17px;height:15px;}
#CNLTreeMenu2 .Opened img.s 
{background:url(skin2/opened.gif) no-repeat 4px 6px;}
#CNLTreeMenu2 .Closed img.s 
{background:url(skin2/closed.gif) no-repeat 3px 6px;}
#CNLTreeMenu2 .Child img.s 
{background:url(skin2/child.gif) no-repeat 3px 5px;}

#CNLTreeMenu3 ul 
{margin:0 0 0 17px;}
#CNLTreeMenu3 img.s 
{width:34px;height:18px;}
#CNLTreeMenu3 .Opened img.s 
{background:url(skin3/opened.gif) no-repeat 0 1px;}
#CNLTreeMenu3 .Closed img.s 
{background:url(skin3/closed.gif) no-repeat 0 1px;}
#CNLTreeMenu3 .Child img.s 
{background:url(skin3/child.gif) no-repeat 13px 2px;}
/*CNLTreeMenu End*/

/*Temp CSS for View Demo*/
#CNLTreeMenu1,#CNLTreeMenu2,#CNLTreeMenu3 
{float:left;width:249px;border:1px solid #99BEEF;background:#D2E4FC;color:inherit;margin:3px;padding:3px;}
#CNLTreeMenu1,#CNLTreeMenu2 
{padding-bottom:15px;}
.ViewCode 
{
 clear
:both;
 border
:1px solid #FFB900;background:#FFFFCC;color:inherit;margin:3px;padding:3px;
}

.ViewCode h6 
{color:#00f;}
JavaScript

function  Ob(o) {
 
var o=document.getElementById(o)?document.getElementById(o):o;
 
return o;
}

function  Hd(o)  {
 Ob(o).style.display
="none";
}

function  Sw(o)  {
 Ob(o).style.display
="";
}

function  ExCls(o,a,b,n) {
 
var o=Ob(o);
 
for(i=0;i<n;i++{o=o.parentNode;}
 o.className
=o.className==a?b:a;
}

function  CNLTreeMenu(id,TagName0)  {
  
this.id=id;
  
this.TagName0=TagName0==""?"li":TagName0;
  
this.AllNodes = Ob(this.id).getElementsByTagName(TagName0);
  
this.InitCss = function (ClassName0,ClassName1,ClassName2,ImgUrl) {
  
this.ClassName0=ClassName0;
  
this.ClassName1=ClassName1;
  
this.ClassName2=ClassName2;
  
this.ImgUrl=ImgUrl || "css/s.gif";
  
this.ImgBlankA ="<img src=/""+this.ImgUrl+"/" class=/"s/" οnclick=/"ExCls(this,'"+ClassName0+"','"+ClassName1+"',1);/" alt=/"展开/折叠/" />";
  
this.ImgBlankB ="<img src=/""+this.ImgUrl+"/" class=/"s/" />";
  
for (i=0;i<this.AllNodes.length;i++ ) {
   
this.AllNodes[i].className==""?this.AllNodes[i].className=ClassName1:"";
   
this.AllNodes[i].innerHTML=(this.AllNodes[i].className==ClassName2?this.ImgBlankB:this.ImgBlankA)+this.AllNodes[i].innerHTML;
   }

 }

 
this.SetNodes = function (n) {
  
var sClsName=n==0?this.ClassName0:this.ClassName1;
  
for (i=0;i<this.AllNodes.length;i++ ) {
   
this.AllNodes[i].className==this.ClassName2?"":this.AllNodes[i].className=sClsName;
  }

 }

}


HTML

<!-- CNLTreeMenu Start: -->
< div  class ="CNLTreeMenu"  id ="CNLTreeMenu1" >
< h4 > CNL Tree Menu1 </ h4 >
< p >< id ="AllOpen_1"  href ="#"  onclick ="MyCNLTreeMenu1.SetNodes(0);Hd(this);Sw('AllClose_1');" > 全部展开 </ a >< id ="AllClose_1"  href ="#"  onclick ="MyCNLTreeMenu1.SetNodes(1);Hd(this);Sw('AllOpen_1');"  style ="display:none;" > 全部折叠 </ a ></ p >
< ul >
  
< li  class ="Opened" >< href ="http://www.iecn.net" > IECN.Net </ a >
  
< ul >
    
< li >< href ="#1" > 技术区 </ a >
      
< ul >
       
< li >< href ="#" > 网页技术 </ a >
        
< ul >
         
< li  class ="Child" >< href ="#" > JavaScript </ a ></ li > <!-- Child Node -->
         
< li  class ="Child" >< href ="#" > HTML/XHTML/CSS </ a ></ li >
         
< li  class ="Child" >< href ="#" > Ajax </ a ></ li >
         
< li  class ="Child" >< href ="#" > 网页制作工具 </ a ></ li >
         
< li  class ="Child" >< href ="#" > 设计/图形 </ a ></ li >
         
< li  class ="Child" >< href ="#" > Flash/多媒体 </ a ></ li >
         
< li  class ="Child" >< href ="#" > VML/Web3D </ a ></ li >
        
</ ul ></ li > <!-- Sub Node 3 -->
       
< li >< href ="#" > Web编程 </ a >
        
< ul >
         
< li  class ="Child" >< href ="#" > Java </ a ></ li > <!-- Child Node -->
         
< li  class ="Child" >< href ="#" > .Net </ a ></ li >
         
< li  class ="Child" >< href ="#" > ASP/VBScript </ a ></ li >
         
< li  class ="Child" >< href ="#" > PHP </ a ></ li >
         
< li  class ="Child" >< href ="#" > Perl/Python </ a ></ li >
         
< li  class ="Child" >< href ="#" > Web综合/开源 </ a ></ li >
        
</ ul ></ li > <!-- Sub Node 3 -->
       
< li >< href ="#" > 数据库 </ a >
        
< ul >
         
< li  class ="Child" >< href ="#" > Access/SQLServer </ a ></ li > <!-- Child Node -->
         
< li  class ="Child" >< href ="#" > MySQL/PostgreSQL </ a ></ li >
         
< li  class ="Child" >< href ="#" > Oracle/DB2/Sybase </ a ></ li >
        
</ ul ></ li > <!-- Sub Node 3 -->
       
< li >< href ="#" > 服务器 </ a >
        
< ul >
         
< li  class ="Child" >< href ="#" > Windows/IIS </ a ></ li > <!-- Child Node -->
         
< li  class ="Child" >< href ="#" > Unix/Linux/Apache </ a ></ li >
         
< li  class ="Child" >< href ="#" > 应用服务器 </ a ></ li >
        
</ ul ></ li > <!-- Sub Node 3 -->
     
</ ul ></ li > <!-- Sub Node 2 -->
    
< li >< href ="#1" > 二级目录 </ a >
      
< ul >
       
< li >< href ="#" > 三级目录 </ a >
        
< ul >
         
< li >< href ="#" > 四级目录 </ a >
          
< ul >
           
< li >< href ="#" > 五级目录 </ a >
            
< ul >
             
< li >< href ="#" > </ a >
              
< ul >
               
< li >< href ="#" > 第n级目录 </ a >
                 
< ul >
                   
< li  class ="Child" >< href ="#" > 叶结点1 </ a ></ li > <!-- Child Node -->
                   
< li  class ="Child" >< href ="#" > 叶结点2 </ a ></ li >
                   
< li  class ="Child" >< href ="#" > 叶结点3 </ a ></ li >
                   
</ ul ></ li > <!-- Sub Node n  -->
              
</ ul ></ li > <!-- Sub Node 6  -->
            
</ ul ></ li > <!-- Sub Node 5  -->
          
</ ul ></ li > <!-- Sub Node 4 -->
        
</ ul ></ li > <!-- Sub Node 3 -->
     
</ ul ></ li > <!-- Sub Node 2 -->
    
< li >< href ="#1" > 二级目录 </ a >
      
< ul >
       
< li >< href ="#" > 三级目录 </ a >
        
< ul >
         
< li >< href ="#" > 四级目录 </ a >
          
< ul >
           
< li >< href ="#" > 五级目录 </ a >
            
< ul >
             
< li >< href ="#" > </ a >
              
< ul >
               
< li >< href ="#" > 第n级目录 </ a >
                 
< ul >
                   
< li  class ="Child" >< href ="#" > 叶结点1 </ a ></ li > <!-- Child Node -->
                   
< li  class ="Child" >< href ="#" > 叶结点2 </ a ></ li >
                   
< li  class ="Child" >< href ="#" > 叶结点3 </ a ></ li >
                   
</ ul ></ li > <!-- Sub Node n  -->
              
</ ul ></ li > <!-- Sub Node 6  -->
            
</ ul ></ li > <!-- Sub Node 5  -->
          
</ ul ></ li > <!-- Sub Node 4 -->
        
</ ul ></ li > <!-- Sub Node 3 -->
     
</ ul ></ li > <!-- Sub Node 2 -->
  
</ ul ></ li > <!-- Sub Node 1  -->
</ ul >
</ div > <!--  CNLTreeMenu  -->
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值