这两天整B/S的东西要在网页上用树来展示层次结构,去网上找了找,找到三个:xtree、mztreeview10(梅花雪树)以及dhtmlxTree.花了一些时间对这三个东西进行了一下测试分析。
1.dhtmxTree
优点:功能非常强,尤其应对树是动态变化的情况,提供了大量的API:比如添加节点、修改节点标题样式及图标、CheckBox功能、节点的查找定位以及拖动,树数据是从特定格式的XML文件(或字符串)中装载。
缺点:正因为功能非常强,所以效率有些低,当节点数达1700多的时候,IE会出“装载时间过长,是否继续等待”的提示,选继续装载,可以装载完成,但节点的展开非常的慢。
2.mztreeview1.0
优点:这个树还是很有特点的,它的数据是一次性加载、异步显示的,也没有对cookie进行任何的操作,效率很高,据官方称:MzTreeView 1.0 在节点量三万至五万以上非常具有优势。
缺点:这个树好象不是设计用来满足节点动态变化这个需求的,应该主要设计用来展示结构层次定死了的树。树的加载是通过调用document.write()来实现的。
3.xtree
这个树跟2有些相似,但多了一个在cookie中保存状态的功能,刷新、前进又后退回去,不会改变树的节点展开、关闭形态,也就说树会保持外观形态。2和3的效率我没有进行测试,但分析应该是2强于3吧。xtree我有同事用,说效率还可以,比dtree强很多。
结论:对要进行较多的操作,树是动态变化的,而节点数又不太多的时候,dhtmxTree是不二的选择;而树是静态不变的,不需要在COOKIE中保存状态,那就用mztreeview了,mztreeview应对节点多的静态树有相当大的优势;xtree是三个产品中唯一使用到cookie的,这是它的显著特点,有这个需求,当然选它了。
我对dhtmlxTree进行了一点小改造,就是加了个在选中节点前添加节点的功能(原来只有添加为后面的同级节点或子节点的功能),这个应该是树节点添加操作中常见的功能,使用dhtmlxTree又需要这个功能的朋友请与我联系。
作者:王力猛 (wallimn)
分享到:
相关推荐
dhtmlxTree 树形控件 JavaScript
第三方树控件dhtmlxTree 3.6
第三方树控件dhtmlxTree
类似于ext的效果,实现了简单的子节点的自动缩进。方便查看树形节点
dhtmlXtree树 右dhtmlXtree键菜单
JavaScript写的dhtmlXTree类库实现的各种树形列表示例demo,需要放到服务器环境中运行,直接打开不好使
JS树形菜单是很常用的JS特效代码,常用在管理软件当中,但是一套树形菜单已经不能满足需求,所以如果能有一套比较全面的树形菜单JS特效代码,将会非常方便,下面懒人萱将超全的JS树形菜单(dhtmlxTree)共享出来,...
内容索引:脚本资源,Ajax/JavaScript,树形菜单 dhtmlxTree 树形菜单大集合,就从Dhtml类库里摘录出来的,包含了许多种树形菜单的样式,部分样式如截图所示,不一一上图了,需要的请下载查看。这些树形菜单个个都经过...
dhtmlx公司的系列组件包括以下几个,此处只上传的是其中的树控件: 包含dhtmlxTree(树型控件),dhtmlxTabbar(选项卡),dhtmlxGrid(数据表格),dhtmlxCombo(下拉选项),dhtmlxTreeGrid(树型表格),dhtmlxVault(文件上传控件...
本文件包含有各种树性菜单,可以学习,或者在此基础上进行二次开发
js动态树合集dhtmlXTree和dtree.rar 讲解说明 和api
javascript树
JS 带右键菜单的目录树 dhtmlxtree+proto.menu 分权限 JS 带右键菜单的目录树 dhtmlxtree+proto.menu 分权限 图片预览 ...
Java 动态树 dhtmlxtree,可以隐藏和展开树,得到树根,树枝节点名称。
dhtmlxTree文档,代码都有,控件学习
dhtmlxtree构建动态维护树,介绍dhtmltree的构建以及修改!
dhtmlxTree 最好的tree控件
dhtmlxTree各类动态树的实现能运行,是一个组件,可直接调用它的方法实现你想要的东西
dhtmlxtree和json的应用。自己写的练习项目,免费下载。