`
zTreeAPI
  • 浏览: 345177 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JQuery Tree插件——zTree v3.5.13 版 发布

阅读更多


    近期由于工作繁忙,所以一直没有发布 v3.5.13 的正式版,只是在 github 上不断更新每次修改后的 beta 版。 不过考虑到 2014年开始 google code 将不在支持创建新文件的下载功能,希望大家也都逐渐习惯使用 github 吧。

    GitHub:https://github.com/zTree/zTree_v3    

    zTree 在线操作演示:http://www.ztree.me/v3/demo.php#_101

    zTree 快速下载地址:http://code.google.com/p/jquerytree/downloads/list

    下面是 v3.5.13 的修改记录:

   * 【增加】beforeRename & onRename 增加 isCancel 参数,可以监控用户 ESC 取消编辑的事件

   * 【修改】初始化时 radioType="all", 父节点未展开 且 子节点有被勾选,点击其他 radio 时,不会取消勾选该子节点的bug
   * 【修改】多棵树拖拽时,拖拽无效后会导致目标书已选择的节点清空的 bug。
   * 【修改】多棵树拖拽时,会触发 addHoverDom 的bug。
   * 【修改】多棵树拖拽时,由于 beforeDrog 或 prev / inner / next 返回 false 后未触发原始节点的 addHoverDom 的bug
   * 【修改】异步加载时,对于未加载子节点的父节点使用 expandNode 方法时, sonSign 设置为 true后,导致异步加载的节点无法正常显示的bug
   * 【修改】一次性加载全部数据,如果父节点 A 未展开,但下一级的父节点 A1 设置了 open=true 的时候,使用 expandAll 方法导致 A1 的下一级父节点出现重复的 bug
   * 【修改】增加对 iframe 的支持,可以只在主页面加载 zTree 的 js,在 iframe 内创建树 [https://github.com/zTree/zTree_v3/issues/7 Issue Info]
   * 【修改】引入 exhide 扩展包 导致页面上同时加载多棵树时,根节点 的 连接线图标出现异常 的 bug [http://tieba.baidu.com/p/2277416574]
   * 【修改】excheck & exedit 扩展包中事件代理获取节点 tId 的方法,保证适当修改 DOM 结构也能得到 tId

 

分享到:
评论
42 楼 zTreeAPI 2013-12-29  
zuxianghuang 写道
就是,我通过异步加载一层层加载,到最后一层时
我掉用
expandNode(productLine, true, false, false);展开,
selectNode(treeNode,false);选中。

然后设置滚动条的scrollTop(),但是这时树还有加载完成,设置的scrollTop()没起作用

selectNode 应该会自动展开其父节点的。不用再去设置 scrollTop 以及使用 expandNode
41 楼 zuxianghuang 2013-12-27  
就是,我通过异步加载一层层加载,到最后一层时
我掉用
expandNode(productLine, true, false, false);展开,
selectNode(treeNode,false);选中。

然后设置滚动条的scrollTop(),但是这时树还有加载完成,设置的scrollTop()没起作用
40 楼 zuxianghuang 2013-12-26  
怎么把滚动条设置到选中的节点上啊.
我是用异步加载的,然后下拉表里选中一个,去匹配树里的节点,匹配到了就用selectNode()方法选中。然后滚动条跳到选中的那里去。
节点太多,太长,设置scrollTop,有的可以,有的不行
39 楼 zTreeAPI 2013-11-03  
love521bean 写道
love521bean 写道
树上的节点展开非常耗性能吗? 展开的很慢,无论是expandAll还是 open:true都不快,卡顿好几秒。有什么好办法吗??

又测试了一下,发现不是展开不快,还是因为我用getSelectedNodes遍历去check卡主时间了。如果这个代码注释掉,速度还是可以接受的。

你的节点很多吗?? 一般来说 expandAll 应该还可以,但是节点很多的时候肯定会影响性能。 另外 checkNode 方法使用时一定要注意,尤其是有父子关联勾选的默认操作时。。。这里面在使用时要特别注意。。。
38 楼 love521bean 2013-10-28  
love521bean 写道
树上的节点展开非常耗性能吗? 展开的很慢,无论是expandAll还是 open:true都不快,卡顿好几秒。有什么好办法吗??

又测试了一下,发现不是展开不快,还是因为我用getSelectedNodes遍历去check卡主时间了。如果这个代码注释掉,速度还是可以接受的。
37 楼 love521bean 2013-10-28  
树上的节点展开非常耗性能吗? 展开的很慢,无论是expandAll还是 open:true都不快,卡顿好几秒。有什么好办法吗??
36 楼 zTreeAPI 2013-10-27  
love521bean 写道
终于理解你那句话的含义了。
“利用 getCheckedNodes 以及 checkNode 方法处理一下就Ok了,也不会太麻烦的”
瞎写了半天。。
后来改了一下:
function refreshCheck() {
var zTree = $.fn.zTree.getZTreeObj("functionTree");
var nodes = zTree.getCheckedNodes(true);
    for (var i=0, l=nodes.length; i<l; i++) {
var childrens = nodes[i].children;
if(childrens != null && childrens != ''){
continue;
}
zTree.checkNode(nodes[i], true,true);
}
}

一个方法就够了。一开始没有理解checkNode的功能。原来这个方法是能够自动关联的。

35 楼 love521bean 2013-10-26  
终于理解你那句话的含义了。
“利用 getCheckedNodes 以及 checkNode 方法处理一下就Ok了,也不会太麻烦的”
瞎写了半天。。
后来改了一下:
function refreshCheck() {
var zTree = $.fn.zTree.getZTreeObj("functionTree");
var nodes = zTree.getCheckedNodes(true);
    for (var i=0, l=nodes.length; i<l; i++) {
var childrens = nodes[i].children;
if(childrens != null && childrens != ''){
continue;
}
zTree.checkNode(nodes[i], true,true);
}
}

一个方法就够了。一开始没有理解checkNode的功能。原来这个方法是能够自动关联的。
34 楼 love521bean 2013-10-25  
写了两个小方法搞定这个事情了:
function refreshCheck() {
var zTree = $.fn.zTree.getZTreeObj("treeDemo");
var nodes = zTree.getNodes();
    for (var i=0, l=nodes.length; i<l; i++) {
var checkedFlag = checkNodeStatus(nodes[i]);
if(checkedFlag){
nodes[i].checked = true;
}
}

}

function checkNodeStatus(node){
var childrens = node.children;
if(childrens == null){
return node.checked;
}else{
var checkedFlag = true;
    for (var i=0, l=childrens.length; i<l; i++) {
var childrenCheckFlag = checkNodeStatus(childrens[i]);
if(!childrenCheckFlag){
checkedFlag = false;
}
}
if(checkedFlag){
var zTree = $.fn.zTree.getZTreeObj("treeDemo");
zTree.checkNode(node, true,true);
}
return node.checked;
}
}

还有个问题想请教一下,我加载之后想默认打开,用expandAll结果发现很慢。会卡一下,不知道是不是数据里直接放open:true会快一些。是不是expendAll本身就会很慢?
33 楼 zTreeAPI 2013-10-25  
love521bean 写道
zTreeAPI 写道
love521bean 写道
zuxianghuang 写道
zTreeAPI 写道
zuxianghuang 写道
首先感谢作者,
现在我在用3.5版的。
有个问题,
就是子节点复选框设置了true,选中了,但是父节点不是选中的状态,是黑的,没有关联。
但是设的是子父级关联的啊。
现在要把它的所有的父级都设置为true,才能达到效果。
不知是否做成级联更好?

1. 父节点 checkbox 变灰色,是表明该节点的子节点有被选中的情况;这样主要用于即使父节点被折叠时,用户也能清晰快速找到勾选的子节点。 看看 API中 setting.check.chkStyle 这个的说明
2. chkboxType 这个属性如果你没有修改,默认就是父子关联的呀。 请你对照 checkbox 的demo 再看看吧

嗯,你说的对。
就是用户看到那个灰色的复选框,子节点是又是选中的,他以为是出问题。
不过我把父节点都设为true,就好了。
你说,你提供一个getParentNodesz()得到所有父节点的方法是否能比我一个个循环调用getParentNode()要快呢?


我也遇到这个问题,就是用数据加载的时候,我只加载子节点的数据,当一个父下所有的子节点都是选中状态时,父节点只是变成灰色,而没有处于选中状态。其实这个时候处于选中状态就比较清晰了,说明下面的子都是被选中的。但是如果是点击的话,就没有这个问题,点击所有的子,父就自动选中了。

是这样的,因为 为了保证 原始数据的准确性,避免干扰,所以初始化时是不会进行数据联动勾选的。 请务必注意


啊。。。啊。。。。之前用easyUi的tree时,能达到这个效果,所以后台就只传了子节点了。这样父节点都不需要再传送了,节省数据量。请问怎么改能够让其有这种效果。还是非常希望能够自动进行数据联动勾选。这样后台传送的数据量就会小很多。谢谢啦。

利用 getCheckedNodes 以及 checkNode 方法处理一下就Ok了,也不会太麻烦的
32 楼 love521bean 2013-10-25  
zTreeAPI 写道
love521bean 写道
zuxianghuang 写道
zTreeAPI 写道
zuxianghuang 写道
首先感谢作者,
现在我在用3.5版的。
有个问题,
就是子节点复选框设置了true,选中了,但是父节点不是选中的状态,是黑的,没有关联。
但是设的是子父级关联的啊。
现在要把它的所有的父级都设置为true,才能达到效果。
不知是否做成级联更好?

1. 父节点 checkbox 变灰色,是表明该节点的子节点有被选中的情况;这样主要用于即使父节点被折叠时,用户也能清晰快速找到勾选的子节点。 看看 API中 setting.check.chkStyle 这个的说明
2. chkboxType 这个属性如果你没有修改,默认就是父子关联的呀。 请你对照 checkbox 的demo 再看看吧

嗯,你说的对。
就是用户看到那个灰色的复选框,子节点是又是选中的,他以为是出问题。
不过我把父节点都设为true,就好了。
你说,你提供一个getParentNodesz()得到所有父节点的方法是否能比我一个个循环调用getParentNode()要快呢?


我也遇到这个问题,就是用数据加载的时候,我只加载子节点的数据,当一个父下所有的子节点都是选中状态时,父节点只是变成灰色,而没有处于选中状态。其实这个时候处于选中状态就比较清晰了,说明下面的子都是被选中的。但是如果是点击的话,就没有这个问题,点击所有的子,父就自动选中了。

是这样的,因为 为了保证 原始数据的准确性,避免干扰,所以初始化时是不会进行数据联动勾选的。 请务必注意


啊。。。啊。。。。之前用easyUi的tree时,能达到这个效果,所以后台就只传了子节点了。这样父节点都不需要再传送了,节省数据量。请问怎么改能够让其有这种效果。还是非常希望能够自动进行数据联动勾选。这样后台传送的数据量就会小很多。谢谢啦。
31 楼 zTreeAPI 2013-10-25  
love521bean 写道
zuxianghuang 写道
zTreeAPI 写道
zuxianghuang 写道
首先感谢作者,
现在我在用3.5版的。
有个问题,
就是子节点复选框设置了true,选中了,但是父节点不是选中的状态,是黑的,没有关联。
但是设的是子父级关联的啊。
现在要把它的所有的父级都设置为true,才能达到效果。
不知是否做成级联更好?

1. 父节点 checkbox 变灰色,是表明该节点的子节点有被选中的情况;这样主要用于即使父节点被折叠时,用户也能清晰快速找到勾选的子节点。 看看 API中 setting.check.chkStyle 这个的说明
2. chkboxType 这个属性如果你没有修改,默认就是父子关联的呀。 请你对照 checkbox 的demo 再看看吧

嗯,你说的对。
就是用户看到那个灰色的复选框,子节点是又是选中的,他以为是出问题。
不过我把父节点都设为true,就好了。
你说,你提供一个getParentNodesz()得到所有父节点的方法是否能比我一个个循环调用getParentNode()要快呢?


我也遇到这个问题,就是用数据加载的时候,我只加载子节点的数据,当一个父下所有的子节点都是选中状态时,父节点只是变成灰色,而没有处于选中状态。其实这个时候处于选中状态就比较清晰了,说明下面的子都是被选中的。但是如果是点击的话,就没有这个问题,点击所有的子,父就自动选中了。

是这样的,因为 为了保证 原始数据的准确性,避免干扰,所以初始化时是不会进行数据联动勾选的。 请务必注意
30 楼 love521bean 2013-10-24  
zuxianghuang 写道
zTreeAPI 写道
zuxianghuang 写道
首先感谢作者,
现在我在用3.5版的。
有个问题,
就是子节点复选框设置了true,选中了,但是父节点不是选中的状态,是黑的,没有关联。
但是设的是子父级关联的啊。
现在要把它的所有的父级都设置为true,才能达到效果。
不知是否做成级联更好?

1. 父节点 checkbox 变灰色,是表明该节点的子节点有被选中的情况;这样主要用于即使父节点被折叠时,用户也能清晰快速找到勾选的子节点。 看看 API中 setting.check.chkStyle 这个的说明
2. chkboxType 这个属性如果你没有修改,默认就是父子关联的呀。 请你对照 checkbox 的demo 再看看吧

嗯,你说的对。
就是用户看到那个灰色的复选框,子节点是又是选中的,他以为是出问题。
不过我把父节点都设为true,就好了。
你说,你提供一个getParentNodesz()得到所有父节点的方法是否能比我一个个循环调用getParentNode()要快呢?


我也遇到这个问题,就是用数据加载的时候,我只加载子节点的数据,当一个父下所有的子节点都是选中状态时,父节点只是变成灰色,而没有处于选中状态。其实这个时候处于选中状态就比较清晰了,说明下面的子都是被选中的。但是如果是点击的话,就没有这个问题,点击所有的子,父就自动选中了。
29 楼 zTreeAPI 2013-10-14  
lybykw 写道
普通树完成后,有没有回调函数。谢谢。
一般的树渲染完成后,整个都生成了,想执行回调函数,完成一些特殊功能。有没有呀。

没有使用异步加载的普通树 init 后就完成了,不需要回调。 如果是 异步加载的话,需要捕获 onAsyncSuccess 回调
28 楼 lybykw 2013-10-10  
普通树完成后,有没有回调函数。谢谢。
一般的树渲染完成后,整个都生成了,想执行回调函数,完成一些特殊功能。有没有呀。
27 楼 zTreeAPI 2013-09-15  
mmeroad 写道
你好,我在和easyui1.3.3版本一起使用时,身拖拽树结点时报错,请问有什么解决方法吗?
IE10调试报错:
SCRIPT5009: “body”未定义
jquery.ztree.all-3.5.js, 行3062 字符6

今天整理遗留问题时,发现你这个问题已经修正,貌似一直没有告诉你。。不好意思
26 楼 zTreeAPI 2013-09-06  
zuxianghuang 写道
zTreeAPI 写道
zuxianghuang 写道
首先感谢作者,
现在我在用3.5版的。
有个问题,
就是子节点复选框设置了true,选中了,但是父节点不是选中的状态,是黑的,没有关联。
但是设的是子父级关联的啊。
现在要把它的所有的父级都设置为true,才能达到效果。
不知是否做成级联更好?

1. 父节点 checkbox 变灰色,是表明该节点的子节点有被选中的情况;这样主要用于即使父节点被折叠时,用户也能清晰快速找到勾选的子节点。 看看 API中 setting.check.chkStyle 这个的说明
2. chkboxType 这个属性如果你没有修改,默认就是父子关联的呀。 请你对照 checkbox 的demo 再看看吧

嗯,你说的对。
就是用户看到那个灰色的复选框,子节点是又是选中的,他以为是出问题。
不过我把父节点都设为true,就好了。
你说,你提供一个getParentNodesz()得到所有父节点的方法是否能比我一个个循环调用getParentNode()要快呢?

一样的,无非是你能省事儿一些
25 楼 zuxianghuang 2013-09-02  
zTreeAPI 写道
zuxianghuang 写道
首先感谢作者,
现在我在用3.5版的。
有个问题,
就是子节点复选框设置了true,选中了,但是父节点不是选中的状态,是黑的,没有关联。
但是设的是子父级关联的啊。
现在要把它的所有的父级都设置为true,才能达到效果。
不知是否做成级联更好?

1. 父节点 checkbox 变灰色,是表明该节点的子节点有被选中的情况;这样主要用于即使父节点被折叠时,用户也能清晰快速找到勾选的子节点。 看看 API中 setting.check.chkStyle 这个的说明
2. chkboxType 这个属性如果你没有修改,默认就是父子关联的呀。 请你对照 checkbox 的demo 再看看吧

嗯,你说的对。
就是用户看到那个灰色的复选框,子节点是又是选中的,他以为是出问题。
不过我把父节点都设为true,就好了。
你说,你提供一个getParentNodesz()得到所有父节点的方法是否能比我一个个循环调用getParentNode()要快呢?
24 楼 zTreeAPI 2013-08-31  
zuxianghuang 写道
首先感谢作者,
现在我在用3.5版的。
有个问题,
就是子节点复选框设置了true,选中了,但是父节点不是选中的状态,是黑的,没有关联。
但是设的是子父级关联的啊。
现在要把它的所有的父级都设置为true,才能达到效果。
不知是否做成级联更好?

1. 父节点 checkbox 变灰色,是表明该节点的子节点有被选中的情况;这样主要用于即使父节点被折叠时,用户也能清晰快速找到勾选的子节点。 看看 API中 setting.check.chkStyle 这个的说明
2. chkboxType 这个属性如果你没有修改,默认就是父子关联的呀。 请你对照 checkbox 的demo 再看看吧
23 楼 zuxianghuang 2013-08-31  
首先感谢作者,
现在我在用3.5版的。
有个问题,
就是子节点复选框设置了true,选中了,但是父节点不是选中的状态,是黑的,没有关联。
但是设的是子父级关联的啊。
现在要把它的所有的父级都设置为true,才能达到效果。
不知是否做成级联更好?

相关推荐

    JQuery zTree v3.4 ztree

    JQuery zTree 是一个基于 jQuery 的插件,用于在网页中构建交互式的树形结构。v3.4 版本是其稳定且功能丰富的版本之一,适用于多种应用场景,如数据展示、导航菜单、文件目录等。它以其易用性、高效性和强大的功能...

    JQuery-zTree-v2.6.rar_Java 8_jquery tree_jquery-ztree-2.6.js_jqu

    2、在一个页面内可同时生成多个 Tree 实例 3、支持 JSON 数据 4、支持一次性静态生成 和 Ajax 异步加载 两种方式 5、支持多种事件响应及反馈 6、支持 Tree 的节点移动、编辑、删除 7、支持极其灵活的 checkbox...

    JQuery zTree v3.3

    JQuery zTree是一款基于JavaScript的开源树...总之,JQuery zTree v3.3是一个强大且易用的JavaScript树形插件,它通过提供多种操作功能、良好的性能以及灵活的定制选项,满足了开发者在构建网页树形结构时的各种需求。

    全网jquery.tree树形菜单打包下载(zTree&jquery-ui&treeview共四种)

    这个压缩包包含四个不同的jQuery树形插件:zTree、jQuery UI Treeview、jQuery UI Draggable Tree和jQuery Simple Treeview。这些插件各有特色,适用于不同的项目需求。 首先,zTree是一款功能强大的jQuery插件,...

    jQuery 树形结构插件 zTree

    **jQuery zTree 插件详解** zTree 是一个基于 jQuery 的强大树形控件,它在Web开发中被广泛应用于构建动态的、交互式的树形结构。zTree 的设计目标是提供高性能、易于配置和丰富的功能,使得开发者可以轻松地在网页...

    Jquery-ztree树形菜单代码并适应移动端

    JQuery-zTree是一款基于jQuery的树形插件,它提供了丰富的功能和良好的性能,尤其适用于构建树形结构的菜单和数据展示。在移动端应用中,zTree能够自适应屏幕尺寸,提供良好的用户体验。本项目提供的代码是针对...

    JQuery完美树形插件-zTree

    JQuery-zTree 的主要功能: 1、兼容 IE、FireFox、Chrome 等浏览器 2、在一个页面内可同时生成多个 Tree 实例 3、支持 JSON 数据 4、支持一次性静态生成 和 Ajax 异步加载 两种方式 5、支持多种事件响应及...

    JQuery zTree v2.6

    JQuery zTree是一款基于JavaScript的树形插件,其v2.6版本在功能和性能上进行了优化,为开发者提供了更强大的树形结构处理能力。这个版本的zTree不仅包含了完整的API文档,还附带了一系列经典实例,便于开发者理解和...

    JQuery实现树插件 Ztree

    JQuery实现树插件Ztree是一个广泛使用的轻量级前端组件,它为Web开发者提供了构建交互式树形结构的便捷工具。Ztree基于流行的JavaScript库JQuery,因此,如果你已经熟悉JQuery,那么掌握Ztree将相对容易。在本文中,...

    archive_zTree(JQuery Tree) v3.1.zip.zip

    【标题】"archive_zTree(JQuery Tree) v3.1.zip.zip" 提供的是一个用于构建树形结构的jQuery插件——zTree的v3.1版本。zTree是一款广泛应用于网页开发中的JavaScript库,它使得在网页上展示层级关系的数据变得更加...

    JQuery zTree v3.5 api

    jQuery zTree 是一款基于 jQuery 的树形插件,广泛应用于网站导航、组织结构展示、文件目录管理等多种场景。v3.5 版本是其一个重要的里程碑,它提供了丰富的功能和优化的性能,使得开发者能够更加灵活地构建树形结构...

    JQueryTree zTree

    `JQueryTree` 和 `zTree` 是两个基于JavaScript库,尤其是jQuery框架的插件,用于实现动态、交互式的树形组件。 **JQueryTree** `JQueryTree` 是一个轻量级的jQuery插件,主要用于构建可操作的HTML5树视图。它提供...

    jQuery实现树插件ztree用户选择特效.zip

    而zTree是一款基于jQuery的树插件,它提供了丰富的配置选项和API,使得开发者能够方便地实现各种树形结构的展示和交互功能,特别是用户选择特效。本文将深入探讨如何利用jQuery和zTree来实现用户选择特效。 一、...

    JQuery zTree v3.5.14

    **jQuery zTree v3.5.14** 是一个基于jQuery的树形插件,它在Web开发中广泛用于创建交互式的树形结构。这个版本3.5.14是zTree的一个稳定版本,提供了丰富的功能和优化的性能。下面我们将深入探讨zTree的核心特性、...

    jquery.zTree.js.rar

    jquery-1.4.4.min.js jquery.ztree.exhide.min.js jquery.ztree.exedit.min.js jquery.ztree.excheck.min.js jquery.ztree.core.min.js jquery.ztree.all.min.js jquery-1.4.4.js jquery.ztree.exhide.js jquery....

    JQuery zTree v3.2 最新版

    zTree v3.0 将核心代码按照功能进行了分割,不需要的代码可以不用加载 采用了 延迟加载 技术,上万节点轻松加载,即使在 IE6 下也能基本做到秒杀 兼容 IE、FireFox、Chrome、Opera、Safari 等浏览器 支持 JSON 数据 ...

Global site tag (gtag.js) - Google Analytics