最近用到了dtree来建立树,纠结过好久后,终于有了些门道,下面的总结希望对咪咪们有些帮助:
 dtree用来建立静态树或者动态树都是很方便的,老外给提供了整个的JS,然后我们只是操心这个树中存放的元素以及这些元素链接地址就可以了,其他的实现过程完全是由老外的代码实现的,我们不必深究。
 有关Dtree的所有文件我已经打包发到网盘,且里面有一些范例等,包括了一个网友的PPT介绍,很牛的。
    解压缩dtree.zip 包。

dtree目录下包括这些文件:example01.html 、 dtree.js 、 api.html 、 dtree.css 和img目录  注意:除了api.html之外,其它的文件都是必须拷贝的。api.html是dtree的函数介绍。

1. dtree.js : dtree功能脚本

2. dtree.css : 样式文件

3. img文件夹 : 存放dtree使用的图标

其中 打开example01.html文件

<link rel="StyleSheet" href="css/dtree.css" type="text/css" />

<script type="text/javascript" src="js/dtree.js"></script>

这里的这两行代码,懂IT的都应该知道放到哪里,example01.html里面也有这个代码,放到head中就可以了,注意指定路径。

生成树 节点的代码:

<script type="text/javascript">

<!--

d = new dTree(’d’);//创建一个树对象

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’);

document.write(d);

//-->

</script>

d.add(0,-1,’My example tree’);

这一句为树添加了一个根节点,显示名称为’My example tree’     d.add(1,0,’Node 1’,’example01.html’);

这一句在树的根节点下面添加了一个子节点。(d.add()方法的参数具体含义可参见api.html文件)

更详细的内容,感觉自我总结不如看看附件中,网友的PPT,我是按照PPT学会的,建立静态表简单,但是建立动态树的时候,就需要用一些循环,来依次读取数据库或者文件内容,循环中add ,然后再提交画出树,这样比较简单。在这个建树过程中需要注意dtree.js里面的那些代码,尤其是this.icon 部分是指定的图片位置,这个地方可能需要按需修改,其他地方基本不需要。

如果对dtree不懂,可以直接找我联系。

jinhuer168@163.com

jinhuer168@gmail.com 这是我的gmail邮箱+gtalk

我经常用Gtalk+163邮箱

下载:DTree文件.rar

附录:

    1. 打开关闭节点:tree.toggle()
    2. 打开节点:tree.expand();
    3. 关闭节点:tree.collapse();
    4. 打开所有节点:tree.expandAll();
    5. 关闭所有节点:tree.collapseAll();
    6. 打开子节点:tree.expandChildren();
    7. 关闭子节点:tree.collapseChildren();
    8. 显示当前节点的id:if (tree.getSelected()) { alert(tree.getSelected().id); }
    9. 增加节点:addNode()
    10. 增加多个节点:addNodes()
    11. 删除节点:delNode()
    12. target    String   true  所有节点的target   
      folderLinks   Boolean      true           文件夹可链接   
      useSelection        Boolean            true           节点可被选择(高亮)   
      useCookies          Boolean            true           树可以使用cookies记住状态   
      useLines            Boolean            true           创建带线的树   
      useIcons            Boolean            true           创建带有图标的树   
      useStatusText       Boolean            false          用节点名替代显示在状态栏的节点url   
      closeSameLevel      Boolean            false          只有一个有父级的节点可以被展开,当这个函数可用时openAll() 和 closeAll() 函数将不可用   
      inOrder             Boolean            false          如果父级节点总是添加在子级节点之前,使用这个参数可以加速菜单显示.

摘自http://blog.sina.com.cn/s/blog_6aa1784101019h8t.html

dtree基础的更多相关文章

  1. DHTMLTree、Dtree和Ztree的学习使用

    一.DHTMLTree是树菜单,允许我们快速开发界面优美,基于Ajax的javascript库.她允许在线编辑,拖拽,三种状态(全选.不选.半选),复选框等模式.同时在加载大数据量的时候,仍然可以保持 ...

  2. java基础集合经典训练题

    第一题:要求产生10个随机的字符串,每一个字符串互相不重复,每一个字符串中组成的字符(a-zA-Z0-9)也不相同,每个字符串长度为10; 分析:*1.看到这个题目,或许你脑海中会想到很多方法,比如判 ...

  3. node-webkit 环境搭建与基础demo

    首先去github上面下载(地址),具体更具自己的系统,我的是windows,这里只给出windows的做法 下载windows x64版本 下载之后解压,得到以下东西 为了方便,我们直接在这个目录中 ...

  4. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  5. Golang, 以17个简短代码片段,切底弄懂 channel 基础

    (原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的IM服务器,所以复习了下之前一直没怎么使用的协程.管道等高并发编程知识 ...

  6. [C#] C# 基础回顾 - 匿名方法

    C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...

  7. HTTPS 互联网世界的安全基础

    近一年公司在努力推进全站的 HTTPS 化,作为负责应用系统的我们,在配合这个趋势的过程中,顺便也就想去搞清楚 HTTP 后面的这个 S 到底是个什么含义?有什么作用?带来了哪些影响?毕竟以前也就只是 ...

  8. Swift与C#的基础语法比较

    背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...

  9. .NetCore MVC中的路由(1)路由配置基础

    .NetCore MVC中的路由(1)路由配置基础 0x00 路由在MVC中起到的作用 前段时间一直忙于别的事情,终于搞定了继续学习.NetCore.这次学习的主题是MVC中的路由.路由是所有MVC框 ...

随机推荐

  1. EF加载实体的方式

    原文:Loading Related Entities EF加载数据的方式: 预加载 eager loading 延迟加载 lazy loading 显示加载 explicit loading 预先加 ...

  2. (转)SQL利用Case When Then多条件判断

    CASE     WHEN 条件1 THEN 结果1     WHEN 条件2 THEN 结果2     WHEN 条件3 THEN 结果3     WHEN 条件4 THEN 结果4 ....... ...

  3. mysql对GIS空间数据的支持,包括创建空间索引

    CREATE TABLE tb_geo( id INT PRIMARY KEY AUTO_INCREMENT, NAME ) NOT NULL, pnt POINT NOT NULL, SPATIAL ...

  4. n!mod p的求法

    我们假设p为素数,n!=a*pe,则我们需要求解a mod p和e. e是n!能够迭代整除p的次数,因此可以使用下面式子计算: n/p+n/p2+n/p3…… 我们只需要对pt≤n的t进行计算所以复杂 ...

  5. Java消息服务

    什么是消息? 消息是可编程实现两端通信的机制.通常的一些消息技术如:TCP/IP Sockets.管道.文件.共享存储. Java消息服务 Java消息服务,即Java Message Service ...

  6. DOM 之selection

    有关文章的集合 MOZILLA 开发者网络 selection: MOZILLA DEVELOPER NETWORK document.activeElement MOZILLA DEVELOPER ...

  7. win7 去除桌面快捷方式小箭头

    二手入了个 sony 的本子 vgn-sz780 拿手上,感觉真心不错,然后装系统,装好xp后发现怎么折腾都没声音,由于我的硬盘是SSD的虽然有点小只有60G,但是速度还是蛮不多的,于是一横心就装了 ...

  8. 畅通工程续--hdu1874

    畅通工程续 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  9. 如何实现SQL事务的提交,又不对外进行污染

    一.以下是本人的一点思路: 1.在事务方法中,参数运用委托Func,选用Func 的原因是多入参,单一出参2.事务传参运用泛型,选用泛型的原因是可以减少代码量,类型安全 二.说明中涉及4个类:1.Or ...

  10. Loadrunner根据PV量来确定需要进行压测的并发量

    在实际做压力测试的过程中,我们有时不知道用怎样的并发量比较好,下面是几个用PV量去确定并发量的公式,这个在我们公司是比较适用的,大家可以根据自己的业务进行运算. 方法一:这个方法是我在网上查到的80- ...