最近用到了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. DBHerperl类

    using System; using System.Collections.Generic; using System.Text; using System.Data; using System.D ...

  2. select radio readonly

    首先 select radio 设置 disable的会无法提交数据. 这让我很头疼  而且 readonly 无效 后来发现.我把自己绕进去了..一般涉及 只读都是 不让用户修改 .而后台只更新 可 ...

  3. oracle 自动添加序号列 排序

    select      HSL.sortno,                    HSL.B,                    HSL.A,                    row_n ...

  4. textField:shouldChangeCharactersInRange:replacementString:

    http://blog.csdn.net/mamong/article/details/44964801

  5. oc随笔二:组合、继承

    在oc中如果没有使用ARC的话,手动管理内存一定要注意处理好“野指针”,通常我们在释放指针的指向的地址时,都要将指针赋值为nil,这样能有效的防止野指针.常用的关键字:retain.assign .s ...

  6. Maybe I go too extreme

    昨天拖着一个没睡好的身体去面试了2家公司 被问到Collection的子集的时候顿时傻了一会,明明很简单的问题一时就想不起来了,哈哈.果然做it的人身体要顾好,状态太差了. 发现了一个问题,其实也是早 ...

  7. CDialog类中OnCancel()、OnInitDialog()作用

    1.void CCOMDDlg::OnCancel() { // TODO: Add extra cleanup here CDialog::OnCancel();} 如果把CDialog::OnCa ...

  8. (原).cc 和 .cpp 后缀结尾的文件的区别

    This caused a few problems the first time C++ was ported to a system where case wasn't significant i ...

  9. Java根据字节数据判断文件类型

    通常,在WEB系统中,上传文件时都需要做文件的类型校验,大致有如下几种方法: 1. 通过后缀名,如exe,jpg,bmp,rar,zip等等. 2. 通过读取文件,获取文件的Content-type来 ...

  10. 如何让你的 footer 总是在浏览器底部无论什么分辨率无论什么浏览器?

    一个可以用的CSS驱动的可粘在底部的Footer 我们曾经都或多或少的试过用CSS来把Footer固定在底部的经理,但是他们总是不能正常的粘在底部,不是吗?可喜的是,痛苦的研究如何让footer粘在底 ...