`
zTreeAPI
  • 浏览: 345621 次
  • 性别: 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 v3.3

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

    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.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 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.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用户选择特效.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 v3.2 最新版

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

    JQuery zTree v3.1 API

    JQuery zTree v3.1 API

Global site tag (gtag.js) - Google Analytics