javascript+dom树型菜单类,希望朋友们一起进步


Posted in Javascript onMay 03, 2007

树菜单js网上多得是,自己写了一个树菜单类,自认为还不错,公开大家共享和探讨,和大家一起进步最快乐!!
/*  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"; //菜单关闭图标
this.MenuGroupOpen="images/treeview_open.gif"; //菜单打开图标
this.MenuItemClass=""; //菜单项样式
this.MenuItemInfoClass=""; //菜单链接样式
this.MenuItemlPad="12px";//下级菜单缩进仁值
this.DefaultGroupState=false; //菜单组装入时默认状态
document.write("<div id=\"treeroot\"></div>");
this.Node=document.getElementById("treeroot");
//0结点DOM对像,数组1为连接显示,2为连接href,3为连接target,4为连接显示前图标
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];
}
}
}
-->  

Javascript 相关文章推荐
javascript string字符串优化问题
Jul 31 Javascript
点击进行复制的JS代码实例
Aug 23 Javascript
js实现的折叠导航示例
Nov 29 Javascript
一个简单的动态加载js和css的jquery代码
Sep 01 Javascript
JavaScript判断浏览器类型的方法
Feb 10 Javascript
Jquery easyui 实现动态树
Nov 17 Javascript
js省市联动效果完整实例代码
Dec 09 Javascript
详解如何使用 vue-cli 开发多页应用
Dec 16 Javascript
原生JS实现轮播图效果
Oct 12 Javascript
jQuery利用FormData上传文件实现批量上传
Dec 04 jQuery
vue配置font-awesome5的方法步骤
Jan 27 Javascript
基于html+css+js实现简易计算器代码实例
Feb 28 Javascript
几行代码轻松搞定jquery实现flash8类似的连接效果
May 03 #Javascript
JS实多级联动下拉菜单类,简单实现省市区联动菜单!
May 03 #Javascript
javascript静态的url如何传递
May 03 #Javascript
可以支持多中格式的JS键盘
May 02 #Javascript
javascript英文日期(有时间)选择器
May 02 #Javascript
(推荐一个超好的JS函数库)S.Sams Lifexperience ScriptClassLib
Apr 29 #Javascript
JavaScript 实现??打印?理
Apr 28 #Javascript
You might like
thinkphp模板继承实例简述
2014/11/26 PHP
在Linux系统下一键重新安装WordPress的脚本示例
2015/06/30 PHP
php对接java现实加签验签的实例
2016/11/25 PHP
YII框架中使用memcache的方法详解
2017/08/02 PHP
PHP环形链表实现方法示例
2017/09/15 PHP
jQuery学习4 浏览器的事件模型
2010/02/07 Javascript
一个js的tab切换效果代码[代码分离]
2010/04/11 Javascript
Javascript Function对象扩展之延时执行函数
2010/07/06 Javascript
Js获取下拉框选定项的值和文本的实现代码
2014/02/26 Javascript
使用canvas实现仿新浪微博头像截取上传功能
2015/09/02 Javascript
果断收藏9个Javascript代码高亮脚本
2016/01/06 Javascript
JavaScript实现256色转灰度图
2017/02/22 Javascript
nodejs爬虫遇到的乱码问题汇总
2017/04/07 NodeJs
JavaScript 实现自己的安卓手机自动化工具脚本(推荐)
2020/05/13 Javascript
JSON stringify方法原理及实例解析
2020/10/23 Javascript
[01:06]DOTA2亚洲邀请赛专属珍藏-荧煌之礼
2017/03/24 DOTA
[01:11:21]DOTA2-DPC中国联赛 正赛 Phoenix vs CDEC BO3 第三场 3月7日
2021/03/11 DOTA
django框架如何集成celery进行开发
2017/05/24 Python
python进程管理工具supervisor的安装与使用教程
2017/09/05 Python
Python处理中文标点符号大集合
2018/05/14 Python
python递归函数绘制分形树的方法
2018/06/22 Python
学生信息管理系统python版
2018/10/17 Python
Pandas:Series和DataFrame删除指定轴上数据的方法
2018/11/10 Python
python如何获取当前文件夹下所有文件名详解
2019/01/25 Python
关于Python 的简单栅格图像边界提取方法
2019/07/05 Python
如何通过50行Python代码获取公众号全部文章
2019/07/12 Python
Django 源码WSGI剖析过程详解
2019/08/05 Python
python自动脚本的pyautogui入门学习
2020/04/01 Python
解决Django Haystack全文检索为空的问题
2020/05/19 Python
Python selenium实现断言3种方法解析
2020/09/08 Python
css3背景_动力节点Java学院整理
2017/07/11 HTML / CSS
小学家长通知书评语
2014/12/31 职场文书
个人求职信格式范文
2015/03/20 职场文书
2015最新婚礼主持词
2015/06/30 职场文书
如何在Python中创建二叉树
2021/03/30 Python
Python Pygame实战之塔防游戏的实现
2022/03/17 Python