用dtree实现树形菜单 dtree使用说明


Posted in Javascript onOctober 17, 2011

准备工作:
请从三水点靠木https://3water.com/jiaoben/31974.html下载dtree.zip文件
dtree.zip压缩包介绍:
dtree是一个由JavaScript编写成的简单的树形菜单组件,目前免费并且开源。
目前有很多的树形菜单组件(比如ext),dtree是一种简单易懂的js组件,
不需要复杂的操作即可生产,同时支持动态从数据库引入数据
解压后有以下几部分:
img文件夹: 包含树形菜单显示需要的图标
api.html : 作者写的dtree帮助文档


dtree.css: 树形菜单的样式
dtree.js : js核心文件,代码都在其中
example01.html:树形菜单实例 dtree主要方法介绍:
dtree主要方法介绍:
add(parameters):添加一个树节点,实际参数有9个add(id,pid,name,url,title,target,icon,iconOpen,open);
位置 参数别名 类型 功能
1 id int 节点自身的id(唯一)
2 pid int 节点的父节点id
3 name string 节点显示在页面上的名称
4 url string 节点的链接地址
5 title string 鼠标放在节点上显示的提示信息
6 target string 节点链接所打开的目标frame
7 icon string 节点关闭状态时显示的图标
8 iconOpen string 节点打开状态时显示的图标
9 open bool 节点第一次加载是否打开
注:dtree.js文件中是一些默认图片的路径,可以自己配置图片和路径,我下载的在44~57行
openAll()打开全部节点,可在树对象创建前或创建后调用
closeAll()关闭全部节点,可在树对象创建前或创建后调用
openTo(id,select)打开指定id的节点,可以传两个参数:
id 指定需要打开的节点的唯一id

select 是否让该节点处于选中状态
config配置
变量 类型 默认值 描述
target string 所有节点的target
folderLinks bool true 文件夹可被链接
useSelection bool true 节点可被选择高亮
useCookies bool true 树可以使用cookie记住状态
useLines bool true 创建带结构连接线的树
useIcons bool true 创建带有图表的树
useStatusText bool false 用节点名替代显示在状态栏的节点url
closeSameLevel bool false 同级节点只允许一个节点处于打开状态
inOrder bool false 加速父节点树的显示
例如:tree.config.closeSameLevel=true;表示打开某级节点时,该级其他处于打开状态的同级节点会被关闭
示例代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html> 
<head> 
<title>Tree</title> 
<link rel="StyleSheet" href="dtree.css" type="text/css" /><!-- 引入css样式表 --> 
<script type="text/javascript" src="dtree.js"></script><!-- 引入js脚本 --> 
</head> 
<body> 
<div class="dtree"><!--创建一个div层,指定class为“dtree”,此时该层就引用了dtree的样式 --> 
<script type="text/javascript"> 
d = new dTree('d');//new一个树对象 
//设置树的节点及其相关属性 
d.add(0,-1,'My example tree'); 
d.add(1,0,'Node 1','example01.html'); 
d.add(2,0,'Node 2','example01.html'); 
d.add(3,1,'Node 1.1','example01.html'); 
d.add(4,0,'Node 3','example01.html'); 
d.add(5,3,'Node 1.1.1','example01.html'); 
d.add(6,5,'Node 1.1.1.1','example01.html'); 
d.add(7,0,'Node 4','example01.html'); 
d.add(8,1,'Node 1.2','example01.html'); 
d.add(9,0,'My Pictures','example01.html','Pictures I\'ve taken over the years','','','img/imgfolder.gif'); 
d.add(10,9,'The trip to Iceland','example01.html','Pictures of Gullfoss and Geysir'); 
d.add(11,9,'Mom\'s birthday','example01.html'); 
d.add(12,0,'Recycle Bin','example01.html','','','img/trash.gif'); 
//config配置,设置文件夹不能被链接,即有子节点的不能被链接。 
d.config.folderLinks=false; 
document.write(d); 
</script> 
</div> 
</body> 
</html>
Javascript 相关文章推荐
js下弹出窗口的变通
Apr 18 Javascript
风吟的小型JavaScirpt库 (FY.JS).
Mar 09 Javascript
javascript显示用户停留时间的简单实例
Aug 05 Javascript
jquery增加时编辑jqGrid(实例代码)
Nov 08 Javascript
raphael.js绘制中国地图 地图绘制方法
Feb 12 Javascript
JavaScript 性能优化小结
Oct 12 Javascript
基于jQuery通过jQuery.form.js插件实现异步上传
Dec 13 Javascript
xmlplus组件设计系列之网格(DataGrid)(10)
May 05 Javascript
JavaScript事件对象深入详解
Dec 30 Javascript
JavaScript实现单图片上传并预览功能
Sep 30 Javascript
关于vue 项目中浏览器跨域的配置问题
Nov 10 Javascript
代码解析React中setState同步和异步问题
Jun 03 Javascript
Js sort排序使用方法
Oct 17 #Javascript
jquery中ajax学习笔记4
Oct 16 #Javascript
jquery中ajax学习笔记3
Oct 16 #Javascript
jquery ajax学习笔记2 使用XMLHttpRequest对象的responseXML
Oct 16 #Javascript
jquery中ajax学习笔记一
Oct 16 #Javascript
jQuery EasyUI API 中文文档 DateTimeBox日期时间框
Oct 16 #Javascript
自己动手制作jquery插件之自动添加删除行功能介绍
Oct 14 #Javascript
You might like
php strtotime 函数UNIX时间戳
2009/01/14 PHP
慎用preg_replace危险的/e修饰符(一句话后门常用)
2013/06/19 PHP
服务器变量 $_SERVER 的深入解析
2013/07/02 PHP
php实例分享之二维数组排序
2014/05/15 PHP
php相对当前文件include其它文件的方法
2015/03/13 PHP
PHP编程实现脚本异步执行的方法
2017/08/09 PHP
javascript在一段文字中的光标处插入其他文字
2007/08/26 Javascript
THREE.JS入门教程(6)创建自己的全景图实现步骤
2013/01/25 Javascript
JavaScript实现网页上的浮动广告的简单方法
2013/06/14 Javascript
子窗体与父窗体传值示例js代码
2013/08/01 Javascript
讲解JavaScript中for...in语句的使用方法
2015/06/03 Javascript
Javascript实现div的toggle效果实例分析
2015/06/09 Javascript
纯JavaScript代码实现移动设备绘图解锁
2015/10/16 Javascript
JS实现用户注册时获取短信验证码和倒计时功能
2016/10/27 Javascript
基于node搭建服务器,写接口,调接口,跨域的实例
2018/05/13 Javascript
Vue中CSS动画原理的实现
2019/02/13 Javascript
js中关于Blob对象的介绍与使用
2019/11/29 Javascript
微信小程序如何获取地址
2019/12/24 Javascript
[50:54]完美世界DOTA2联赛 GXR vs IO 第三场 11.07
2020/11/10 DOTA
使用Python对SQLite数据库操作
2017/04/06 Python
python中numpy的矩阵、多维数组的用法
2018/02/05 Python
Python实现App自动签到领取积分功能
2018/09/29 Python
python查找重复图片并删除(图片去重)
2019/07/16 Python
python银行系统实现源码
2019/10/25 Python
Python: 传递列表副本方式
2019/12/19 Python
深入解析HTML5的IndexedDB索引数据库
2015/09/14 HTML / CSS
HTML5 虚拟键盘出现挡住输入框的解决办法
2017/02/14 HTML / CSS
使用HTML5做的导航条详细步骤
2020/10/19 HTML / CSS
德国家具在线:Fashion For Home
2017/03/11 全球购物
行政前台岗位职责
2013/12/04 职场文书
社团文化节邀请函
2014/01/10 职场文书
求职信结尾怎么写
2014/05/26 职场文书
主题党日活动总结
2014/07/08 职场文书
2014旅游局党组书记党建工作汇报材料
2014/11/02 职场文书
运动会致辞稿
2015/07/29 职场文书
MySQL实现配置主从复制项目实践
2022/03/31 MySQL