JavaScript+CSS无限极分类代码

131 篇文章 1 订阅

转自:微点阅读  https://www.weidianyuedu.com

a {

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

p {

}{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><a id="AllOpen_1" href="#" οnclick="MyCNLTreeMenu1.SetNodes(0);Hd(this);Sw("AllClose_1");">全部展开</a><a id="AllClose_1" href="#" οnclick="MyCNLTreeMenu1.SetNodes(1);Hd(this);Sw("AllOpen_1");" style="display:none;">全部折叠</a></p>

<ul>

  <li class="Opened"><a href="http://www.iecn.net">IECN.Net</a>

  <ul>

    <li><a href="#1">技术区</a>

      <ul>

       <li><a href="#">网页技术</a>

        <ul>

         <li class="Child"><a href="#">JavaScript</a></li><!--Child Node-->

         <li class="Child"><a href="#">HTML/XHTML/CSS</a></li>

         <li class="Child"><a href="#">Ajax</a></li>

         <li class="Child"><a href="#">网页制作工具</a></li>

         <li class="Child"><a href="#">设计/图形</a></li>

         <li class="Child"><a href="#">Flash/多媒体</a></li>

         <li class="Child"><a href="#">VML/Web3D</a></li>

        </ul></li><!--Sub Node 3-->

       <li><a href="#">Web编程</a>

        <ul>

         <li class="Child"><a href="#">Java</a></li><!--Child Node-->

         <li class="Child"><a href="#">.Net</a></li>

         <li class="Child"><a href="#">ASP/VBScript</a></li>

         <li class="Child"><a href="#">PHP</a></li>

         <li class="Child"><a href="#">Perl/Python</a></li>

         <li class="Child"><a href="#">Web综合/开源</a></li>

        </ul></li><!--Sub Node 3-->

       <li><a href="#">数据库</a>

        <ul>

         <li class="Child"><a href="#">Access/SQLServer</a></li><!--Child Node-->

         <li class="Child"><a href="#">MySQL/PostgreSQL</a></li>

         <li class="Child"><a href="#">Oracle/DB2/Sybase</a></li>

        </ul></li><!--Sub Node 3-->

       <li><a href="#">服务器</a>

        <ul>

         <li class="Child"><a href="#">Windows/IIS</a></li><!--Child Node-->

         <li class="Child"><a href="#">Unix/Linux/Apache</a></li>

         <li class="Child"><a href="#">应用服务器</a></li>

        </ul></li><!--Sub Node 3-->

     </ul></li><!--Sub Node 2-->

    <li><a href="#1">二级目录</a>

      <ul>

       <li><a href="#">三级目录</a>

        <ul>

         <li><a href="#">四级目录</a>

          <ul>

           <li><a href="#">五级目录</a>

            <ul>

             <li><a href="#">

</a>

              <ul>

               <li><a href="#">第n级目录</a>

                 <ul>

                   <li class="Child"><a href="#">叶结点1</a></li><!--Child Node-->

                   <li class="Child"><a href="#">叶结点2</a></li>

                   <li class="Child"><a 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><a href="#1">二级目录</a>

      <ul>

       <li><a href="#">三级目录</a>

        <ul>

         <li><a href="#">四级目录</a>

          <ul>

           <li><a href="#">五级目录</a>

            <ul>

             <li><a href="#">

</a>

              <ul>

               <li><a href="#">第n级目录</a>

                 <ul>

                   <li class="Child"><a href="#">叶结点1</a></li><!--Child Node-->

                   <li class="Child"><a href="#">叶结点2</a></li>

                   <li class="Child"><a 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 -->

<!--CNLTreeMenu1 End!-->

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值