javascript+dom樹型菜單類,希望朋友們一起進(jìn)步
更新時(shí)間:2007年05月03日 00:00:00 作者:
樹菜單js網(wǎng)上多得是,自己寫了一個(gè)樹菜單類,自認(rèn)為還不錯(cuò),公開(kāi)大家共享和探討,和大家一起進(jìn)步最快樂(lè)??!
/* KuoMart.com__MyKuoMart , Create By ybcola(at)163.com , 2006-7-2
Last Modified 2006-7-2 , ybcola@163.com */
<!--
function Dtree(){
this.MenuGroupClose="images/treeview_close.gif"; //菜單關(guān)閉圖標(biāo)
this.MenuGroupOpen="images/treeview_open.gif"; //菜單打開(kāi)圖標(biāo)
this.MenuItemClass=""; //菜單項(xiàng)樣式
this.MenuItemInfoClass=""; //菜單鏈接樣式
this.MenuItemlPad="12px";//下級(jí)菜單縮進(jìn)仁值
this.DefaultGroupState=false; //菜單組裝入時(shí)默認(rèn)狀態(tài)
document.write("<div id=\"treeroot\"></div>");
this.Node=document.getElementById("treeroot");
//0結(jié)點(diǎn)DOM對(duì)像,數(shù)組1為連接顯示,2為連接href,3為連接target,4為連接顯示前圖標(biāo)
this.AddItem=function(menuinfo){
var div=creatediv();
var div1=creatediv();
var ico=[this.MenuGroupClose,this.MenuGroupOpen];
div.className=this.MenuItemClass;
div1.style.marginLeft=this.MenuItemlPad;
div1.style.display=this.DefaultGroupState?"":"none";
var Node=menuinfo[0]?menuinfo[0][1]:this.Node;
var iteminfo="";
if(menuinfo[4]) iteminfo="<img src=\""+menuinfo[4]+"\" align=\"absmiddle\">";
if(menuinfo[2]) iteminfo+=" <a href=\""+menuinfo[2]+"\" target=\""+menuinfo[3]+"\" class=\""+this.MenuItemInfoClass+"\">";
iteminfo+=menuinfo[1];
if(menuinfo[2])iteminfo+="</a>";
div.innerHTML=iteminfo;
Node.appendChild(div);
Node.appendChild(div1);
if(menuinfo[0]){
if(!menuinfo[0][0].havechild) {
var as=document.createElement("img");
as.src=ico[1];
as.align="absmiddle";
as.onclick=function(){
swapshow(Node,as,ico);
}
menuinfo[0][0].insertBefore(as,menuinfo[0][0].firstChild);
as.insertAdjacentText("afterEnd"," ");
menuinfo[0][0].havechild=true;
}
}
return [div,div1];
}
function creatediv(){
var div=document.createElement("div");
return div;
}
function swapshow(obj,ico,oo){
if(obj.style.display!=""){
obj.style.display="";
ico.src=oo[0];
}
else{
obj.style.display="none";
ico.src=oo[1];
}
}
}
-->
/* KuoMart.com__MyKuoMart , Create By ybcola(at)163.com , 2006-7-2
Last Modified 2006-7-2 , ybcola@163.com */
<!--
function Dtree(){
this.MenuGroupClose="images/treeview_close.gif"; //菜單關(guān)閉圖標(biāo)
this.MenuGroupOpen="images/treeview_open.gif"; //菜單打開(kāi)圖標(biāo)
this.MenuItemClass=""; //菜單項(xiàng)樣式
this.MenuItemInfoClass=""; //菜單鏈接樣式
this.MenuItemlPad="12px";//下級(jí)菜單縮進(jìn)仁值
this.DefaultGroupState=false; //菜單組裝入時(shí)默認(rèn)狀態(tài)
document.write("<div id=\"treeroot\"></div>");
this.Node=document.getElementById("treeroot");
//0結(jié)點(diǎn)DOM對(duì)像,數(shù)組1為連接顯示,2為連接href,3為連接target,4為連接顯示前圖標(biāo)
this.AddItem=function(menuinfo){
var div=creatediv();
var div1=creatediv();
var ico=[this.MenuGroupClose,this.MenuGroupOpen];
div.className=this.MenuItemClass;
div1.style.marginLeft=this.MenuItemlPad;
div1.style.display=this.DefaultGroupState?"":"none";
var Node=menuinfo[0]?menuinfo[0][1]:this.Node;
var iteminfo="";
if(menuinfo[4]) iteminfo="<img src=\""+menuinfo[4]+"\" align=\"absmiddle\">";
if(menuinfo[2]) iteminfo+=" <a href=\""+menuinfo[2]+"\" target=\""+menuinfo[3]+"\" class=\""+this.MenuItemInfoClass+"\">";
iteminfo+=menuinfo[1];
if(menuinfo[2])iteminfo+="</a>";
div.innerHTML=iteminfo;
Node.appendChild(div);
Node.appendChild(div1);
if(menuinfo[0]){
if(!menuinfo[0][0].havechild) {
var as=document.createElement("img");
as.src=ico[1];
as.align="absmiddle";
as.onclick=function(){
swapshow(Node,as,ico);
}
menuinfo[0][0].insertBefore(as,menuinfo[0][0].firstChild);
as.insertAdjacentText("afterEnd"," ");
menuinfo[0][0].havechild=true;
}
}
return [div,div1];
}
function creatediv(){
var div=document.createElement("div");
return div;
}
function swapshow(obj,ico,oo){
if(obj.style.display!=""){
obj.style.display="";
ico.src=oo[0];
}
else{
obj.style.display="none";
ico.src=oo[1];
}
}
}
-->
相關(guān)文章
調(diào)用jQuery滑出效果時(shí)閃爍的解決方法
這篇文章主要介紹了在調(diào)用jQuery 滑出效果時(shí),層會(huì)現(xiàn)次閃爍一下的解決方法,需要的朋友可以參考下2014-03-03js實(shí)現(xiàn)select跳轉(zhuǎn)功能代碼
實(shí)現(xiàn)select跳轉(zhuǎn)的方法有很多,本例為大家介紹的是js實(shí)現(xiàn)的,通過(guò)location.href獲取跳轉(zhuǎn)地址,需要的朋友可以看看2014-10-10JavaScript的removeChild()函數(shù)用法詳解
removechild 函數(shù)可以刪除父元素的指定子元素,通過(guò)本文給大家介紹javascript的removeChild()函數(shù)用法,對(duì)js removechild函數(shù)相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧2015-12-12Layui table field初始化加載時(shí)進(jìn)行隱藏的方法
今天小編就為大家分享一篇Layui table field初始化加載時(shí)進(jìn)行隱藏的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09js中調(diào)用微信的掃描二維碼功能的實(shí)現(xiàn)代碼
這篇文章主要介紹了在js中調(diào)用微信的掃描二維碼功能的實(shí)現(xiàn)代碼,本文給大家分享了注意事項(xiàng)及常見(jiàn)問(wèn)題分析,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04