最近用到了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. 《第一行代码》学习笔记7-活动Activity(5)

    1.Intent中只能指定一个action,但却能指定多个category. 2.使用隐式Intent,不仅可以启动自己程序内的活动,还可以启动其他程序的活动,使得Android应用程序之间 的功能共 ...

  2. linux安装rz和sz

    rz命令是用来上传文件 sz命令是用来下载文件 1.系统安装了yum 以root用户登录: yum install lrzsz -y 2.没有安装yum 以下地址中有详解 http://jingyan ...

  3. Solr中schema.xml的解释

    接Solr-4.10.2与Tomcat整合.schema.xml位于D:\solr\data\solr\collection1\conf\中.1.fieldType节点    name: FieldT ...

  4. Js得到radiobuttonlist选中值,设置默认值

    JS 代码 var vRbtid=document.getElementById("rbtid");      //得到所有radio      var vRbtidList= v ...

  5. tomcat重启或关闭后,上传文件消失 .

    tomcat重启或关闭后,上传文件消失的问题,是因为在断电前myeclipse是启动的,断电时造成myeclipse异常关闭,再重新启动myeclipse时会重新发布项目,把先前发布的项目给覆盖了,所 ...

  6. Mysql int(11) 和 int(1)

    Mysql 可以为整数类型制定宽度,例如:int(11) ,对大多数应用这是没有意义的:它不会限制值的合法范围,它只是规定了Mysql的一些交互工具(例如mysql命令行客户端)用来显示字符个数.对于 ...

  7. React/React Native的 ES5 ES6 写法对照

      ES5 ES6 模块 var React = require("react-native); var { Image, Text, View } = React;   import Re ...

  8. iframe与frameset有什么区别

    frame,iframe,frameset 的区别 <FRAMESET> <FRAME><NOFRAMES><IFRAME>欲明白本篇[HTML剖析]之 ...

  9. C语言一维指针的深入理解

    指针是C语言中广泛使用的一种数据类型.运用指针编程是C语言最主要的风格之一. 利用指针变量可以表示各种数据结构:能很方便地使用数组和字符串:并能象汇编语言一样处理内存地址,从而编出精练而高效的程序.指 ...

  10. NOD32强制卸载工具使用方法【转】

    装了ESET NOD32又忘记密码了,无法卸载,怎么办? 以下转自官网:http://faq.eset.com.cn/index.php?pid=254 [适用产品:ESET NOD32 防病毒软件4 ...