用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中常用的元素查找方法总结
Jul 04 Javascript
JS+CSS实现仿新浪微博搜索框的方法
Feb 24 Javascript
JS获取网页图片name属性的方法
Apr 01 Javascript
js实现商品抛物线加入购物车特效
Nov 18 Javascript
input type=file 选择图片并且实现预览效果的实例
Oct 26 Javascript
react中实现搜索结果中关键词高亮显示
Jul 31 Javascript
AngularJS 监听变量变化的实现方法
Oct 09 Javascript
详解angularjs4部署文件过大解决过程
Dec 05 Javascript
解决layui表格内文本超出隐藏的问题
Sep 12 Javascript
vue实现将数据存入vuex中以及从vuex中取出数据
Nov 08 Javascript
利用React高阶组件实现一个面包屑导航的示例
Aug 23 Javascript
解决pycharm双击但是无法打开的情况
Oct 31 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读取ACCESS数据到MYSQL的代码
2011/05/11 PHP
PHP抽象类 介绍
2012/06/13 PHP
Laravel框架实现调用百度翻译API功能示例
2019/05/30 PHP
htm调用JS代码
2007/03/15 Javascript
jQuery中offset()方法用法实例
2015/01/16 Javascript
2种jQuery 实现刮刮卡效果
2015/02/01 Javascript
图解Sublime Text3使用技巧
2015/12/21 Javascript
谈一谈bootstrap响应式布局
2016/05/23 Javascript
原生js更改css样式的两种方式
2017/03/15 Javascript
Node.js设置CORS跨域请求中多域名白名单的方法
2017/03/28 Javascript
简单实现js轮播图效果
2017/07/14 Javascript
vue-router history模式下的微信分享小结
2018/07/05 Javascript
Vue filter格式化时间戳时间成标准日期格式的方法
2018/09/16 Javascript
详解JS预解析原理
2020/06/16 Javascript
[01:55]2014DOTA2国际邀请赛 BBC正赛第一天总结
2014/07/10 DOTA
python 简易计算器程序,代码就几行
2009/08/29 Python
python网络编程学习笔记(七):HTML和XHTML解析(HTMLParser、BeautifulSoup)
2014/06/09 Python
Python之列表的插入&amp;替换修改方法
2018/06/28 Python
python3 flask实现文件上传功能
2020/03/20 Python
解决pycharm 安装numpy失败的问题
2019/12/05 Python
Pytorch中膨胀卷积的用法详解
2020/01/07 Python
python模块如何查看
2020/06/16 Python
NARS化妆品官方商店:美国彩妆品牌
2017/08/26 全球购物
FLOS美国官网:意大利高级照明工艺的传奇
2018/08/07 全球购物
升职自荐信范文
2013/10/05 职场文书
复核员上岗演讲稿
2014/01/05 职场文书
《珍珠泉》教学反思
2014/02/20 职场文书
灰雀教学反思
2014/04/28 职场文书
化工工艺设计求职信
2014/06/25 职场文书
校园主题婚礼活动策划方案
2014/09/15 职场文书
写给老师的感谢信
2015/01/20 职场文书
战马观后感
2015/06/08 职场文书
校运会加油稿大全
2015/07/22 职场文书
创业计划书之美容店
2019/09/16 职场文书
Python pandas求方差和标准差的方法实例
2021/08/04 Python
Oracle配置dblink访问PostgreSQL的操作方法
2022/03/21 PostgreSQL