zTree 介绍
概述
最近对 JQuery 进行了入门,一时兴起写了一个Tree插件,供大家学习和使用,毕竟是本人第一个公开的组件,肯定有许多问题和不足之处,请大家把发现的问题,或好的想法及时与我沟通,在这里特别要感谢 独上太行 的大力支持,架构方面给了我很多关键性的建议。
同时欢迎利用此版制作其他发行版以方便广大 zTree 爱好者,转载请保留版权信息,谢谢。 |
下面介绍一下zTree 的主要功能:( 演示Demo 请访问 个人站点)
1、兼容 IE、FireFox、Chrome 等浏览器
2、在一个页面内可同时生成多个 Tree 实例
3、支持 JSON 数据
4、支持一次性静态生成 和 Ajax 异步加载 两种方式
5、支持多种事件响应及反馈
6、支持 Tree 的节点移动、编辑、删除
7、支持极其灵活的 checkbox & radio 选择功能
8、支持任意更换皮肤 / 个性化图标(依靠css)
9、简单的参数配置 实现 灵活多变的功能
zTree v2.6 更新记录
概述
01、【优化】一次性加载大数据量的效率问题
02、【优化】checkbox 选择时父子关联的效率问题
03、【修改】支持jQuery 1.3.2 / jQuery 1.6 的问题
04、【修改】zTree js文件命名规范,符合jQuery插件的命名标准:jquery.ztree-2.6.js
05、【修改】expandNode 方法,增加 focus 参数(boolean),为保证向下兼容,默认展开时会聚焦到节点上,如果不需要聚焦请设置 focus 为 false
06、【修改】在 constructor 里以及 refresh 中,重新设置zTreeId = 0; 导致实现多个Tree时,treeId 计数清零出现重复 id 的 Bug
07、【修改】contextmenu/mousedown/mouseup 事件未 unbind 的 Bug,如果多次 refresh 就会出现异常
08、【修改】编辑名称的状态下点击其他节点时,无法保存修改后名称的 Bug
09、【修改】IE 浏览器节点重命名时,如果用鼠标全选中编辑内容并在当前 Text 控件之外释放左键,则浏览器会出现死机的 Bug (这种特殊操作时,使用jQuery.parent()方法永远都能获取parent,从而造成死循环)
10、【修改】设置 checkStyle: {"Y": "", "N":""} 后,checkAllNodes(checked)无法全部选中或取消的 Bug
11、【增加】setting.asyncDataFilter 属性;异步获取数据后,首先提供给用户进行加工,然后再反馈给 zTree 的进行添加
12、【增加】setting.dragCopy/dragMove 属性,可以指定节点拖拽后是copy 还是move,如果这两个属性同时false,则Tree无法进行拖拽操作,如果同时为true,则按下Ctrl键拖拽时copy,否则move
13、【增加】treeNode.iconOpen/iconClose 属性,便于自定义文件夹图标在展开、折叠时更换
14、【增加】beforeDblclick、dblclick 双击事件,供特殊使用,该事件与右键的 rightClick 使用方法类似
15、【增加】confirmRename 事件回调函数,以提供修改名称的校验功能
16、【增加】confirmDragOpen 事件,拖拽过程中 target 是父节点时,允许自行控制是否自动展开
17、【增加】inputNodeName(treeNode) 接口,让节点进入重命名状态
18、【增加】copyNode(targetNode, treeNode, moveType) 接口,与 Move 功能类似,允许复制节点
19、【修正 v2.6 beta】使用 addHoverDom/removeHoverDom 方法添加自定义控件以后,会出现节点失去焦点,但自定义控件没有移除的 Bug
20、【修正 v2.6 beta】对于 zTree 大容器进行图层隐藏、显示切换时,IE浏览器下出现 未知的运行时错误。
21、【修正 v2.6 beta】zTreeNodeCache 在反复 refresh() 的时候会造成内存泄露
22、【修正 v2.6 beta】confirmRename 校验失败返回 false 后,利用 updateNode 恢复节点原先状态异常,无法选中其他节点的 Bug
23、【增加 v2.6 beta】nocheck 属性;实现节点自定义是否显示 checkbox/radio 的功能。
24、【增加 v2.6 beta】cancelInput(newName) 接口,允许通过 js 取消编辑状态。