用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 相关文章推荐
jQuery on()方法绑定动态元素的点击事件实例代码浅析
Jun 16 Javascript
Bootstrap Metronic完全响应式管理模板之菜单栏学习笔记
Jul 08 Javascript
JS基于正则实现数字千分位用逗号分隔的方法
Jun 16 Javascript
react router 4.0以上的路由应用详解
Sep 21 Javascript
基于Vue实现拖拽功能
Jul 29 Javascript
详解vue-router导航守卫
Jan 19 Javascript
mpvue全局引入sass文件的方法步骤
Mar 06 Javascript
详解JavaScript的变量
Apr 04 Javascript
Vue 列表上下过渡效果的实例代码
Jun 25 Javascript
vue draggable resizable 实现可拖拽缩放的组件功能
Jul 15 Javascript
vue学习笔记之过滤器的基本使用方法实例分析
Feb 01 Javascript
vue组件开发之tab切换组件使用详解
Aug 21 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
精致的人儿就要挑杯子喝咖啡
2021/03/03 冲泡冲煮
PHP中auto_prepend_file与auto_append_file用法实例分析
2014/09/22 PHP
php格式化时间戳显示友好的时间实现思路及代码
2014/10/23 PHP
phpStorm2020 注册码
2020/09/17 PHP
鼠标滚轮控制网页横向移动实现思路
2013/03/22 Javascript
百度地图给map添加右键菜单(判断是否为marker)
2016/03/04 Javascript
EasyUi combotree 实现动态加载树节点
2016/04/01 Javascript
Bootstrap模态窗口源码解析
2017/02/08 Javascript
jQuery插件zTree实现获取当前选中节点在同级节点中序号的方法
2017/03/08 Javascript
NodeJS基础API搭建服务器详细过程记录
2017/04/01 NodeJs
详解Vue用自定义指令完成一个下拉菜单(select组件)
2017/10/31 Javascript
详解angular路由高亮之RouterLinkActive
2018/04/28 Javascript
如何基于layui的laytpl实现数据绑定的示例代码
2020/04/10 Javascript
three.js 如何制作魔方
2020/07/31 Javascript
python获取目录下所有文件的方法
2015/06/01 Python
python线程、进程和协程详解
2016/07/19 Python
运动检测ViBe算法python实现代码
2018/01/09 Python
python实现雨滴下落到地面效果
2018/06/21 Python
Python检查和同步本地时间(北京时间)的实现方法
2018/12/03 Python
python+jinja2实现接口数据批量生成工具
2019/08/28 Python
python 批量修改 labelImg 生成的xml文件的方法
2019/09/09 Python
Python matplotlib以日期为x轴作图代码实例
2019/11/22 Python
Python urlencode和unquote函数使用实例解析
2020/03/31 Python
Python文件操作模拟用户登陆代码实例
2020/06/09 Python
基于python获取本地时间并转换时间戳和日期格式
2020/10/27 Python
中国旅游网站:同程旅游
2016/09/11 全球购物
意大利一家专营包包和配饰的网上商店:Borse Last Minute
2019/08/26 全球购物
澳大利亚二手奢侈品网站:Modsie
2019/09/23 全球购物
美国一站式电动和手动工具商店:International Tool
2020/11/26 全球购物
银行营业厅大堂经理岗位职责
2014/01/06 职场文书
网络技术专业推荐信
2014/02/20 职场文书
毕业生学校推荐信范文
2014/05/21 职场文书
教师节慰问信
2015/02/15 职场文书
社区服务活动感想
2015/08/11 职场文书
高中化学教学反思
2016/02/22 职场文书
Python实战之疫苗研发情况可视化
2021/05/18 Python