Cómo utilizar javascript para implementar un menú de estructura de árbol expandible con nodos.
¡Pide orientación a los expertos!
a {text-decoration:none;}
a,a:visited {color:#000 ;fondo:heredar;}
cuerpo {margin:0;padding.20px;font:12px tahoma,song,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- tamaño:18px;text-align:center;}
p {margin:0;padding:0 0 0 0 0 18px;}
p a,p a:visited {color:# 00f;fondo :heredar;}
/*CSS temporal para ver demostración*/
#CNLTreeMenu {float:left;width:249px;border:1px solid #99BEEF;fondo: #D2E4FC;color.inherit;margin:3px;padding:3px;}
#CNLTreeMenu {padding-bottom: 15px;}
< CNLTreeMenu">
Menú de árbol CNL1
- Zzsky.Cn
- Zona tecnológica
&l
t;li class="Niño"& gt;JavaScript
- HTML/XHTML/CSS
- HTML/XHTML/CSS/li>
- &! class="Child">Ajax
- Herramienta de creación de páginas web
- Diseño/Gráficos</li>
< li class="Niño">Flash/Multimedia
< li class="Niño"> VML/Web3D
- Zona tecnológica
- Programación web
< li class="Child"> Java
- .
- Perl/Python&l;/li>
- Síntesis web/código abierto&l;/li>/ li>
- Perl/Python&l;/li>
< ;! --Subnodo 3-->
- Access/SQLServer
- MySQL/PostgreSQL
<li class="Niño"> ; Oracle/DB2/Sybase
- Windows/IIS
- Unix/Linux/Apache
<li class="Child"& gt;servidor de aplicaciones
- Directorio de tercer nivel
- ......
- enésimo nivel de catálogo
< li clase="Niño">
- nodo hoja 2
< li class="Niño">Nodo hoja 3
- enésimo nivel de catálogo
p> - ......
- p>
- Directorio de tercer nivel
- ......
- enésimo nivel de catálogo< / p>
- nodo hoja 1
- nodo hoja 2
< ! --Nodo hijo-->
< li class="Niño">Nodo hoja 3
p> - enésimo nivel de catálogo< / p>
- ......
gt;
li>
<;! --
función Ob(o){
var o=document.getElementById(o)?document.getElementById(o):o;
return o ;
}
función Hd(o){
Ob(o).style.display="none";
}
función Sw(o){
Ob(o).style.display="";
}
función ExCls( o, a,b,n){
var o=Ob(o);
for(i=0;i o.className=o.className==a?b:a; } función CNLTreeMenu(id,TagName0){ this.id=id; this.id).getElementsByTagName(TagName0); this.InitCss = función (ClassName0,ClassName1, ClassName2,ImgUrl){ p> this.ClassName0=ClassName0; this.ClassName1=ClassName1; this.ClassName2=ClassName2; this.ImgUrl=ImgUrl | "/images/s.ImgBlankB = " for (i=0;i this.AllNodes[i].className==""?this.AllNodes[i].className=ClassName1:""; esto .AllNodes[i].innerHTML=(this.AllNodes[i].className===ClassName2?this.ImgBlankB:this.ImgBlankA)+this.AllNodes[i].innerHTML; } } this.SetNodes = función (n){ var sClsName=n==0?this.ClassName0:this.ClassName1;";