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

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

阅读更多

    首先要告诉大家,在 jQuery 发布了插件注册功能后,zTree 也已经发布到了 jQuery 的 Plugins 内,同时也在 Github 上进行了发布(不过近期敏感事件期间 github 一会儿能访问一会儿又不能访问,建议大家还是苦练翻那个什么Wall的本领吧,呵呵)。

 

    jQuery Plugin:http://plugins.jquery.com/zTree.v3/

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

 

    这次修正的内容应该还是挺重要的,特别是删除了 jQuery.browser() 的使用,保证了对 jQuery 1.9 的兼容;

    

    另外修改了 checkbox/radio 的 disabled 功能,对于那些希望父节点 禁用 checkbox 但子节点依然使用 checkbox 的同志们,赶紧升级吧!

 

    同时,还要非常感谢一位热心的朋友(XLiming),让我远程登录调试了 IE10 下 异步加载的问题,经过测试以及网上搜索,发现这是 IE10 的一个严重 bug —— ajax 提交请求 type = "post" 时会发现参数无法传到后台。 

    

    这样结果就是 —— 异步加载时展开节点总是得到根节点,从而导致逐层展开的都是根节点数据,然后就死循环下去了。 

    

    更严重的情况是 —— 对于 异步加载模式下全部展开 的 Demo 来说,一旦用 IE10 访问,就会导致死循环崩溃的。。。。所以我现在已经将 Demo 修改为 "get" 的方式。 请有类似使用的朋友都要注意一下了!

    相关 IE10 post 参数丢失 bug 的信息可以参考页面:http://bugs.jquery.com/ticket/12790

 

    对于 zTree 新版本的重构仍在酝酿,如果大家有什么想法、建议,也非常欢迎与我进行沟通。

 

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

 

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

 

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

 

   * 【增加】setting.check.chkDisabledInherit 属性,用于设置 chkDisabled 在初始化时子节点是否可以继承父节点的 chkDisabled 属性

   * 【删除】内部 noSel 方法,使用 selectstart事件 和 "-moz-user-select"样式 处理禁止 节点文字被选择的功能

   * 【修改】不兼容 jQuery 1.9 的bug

   * 【修改】onDrop 的触发规则,保证异步加载模式下,可以在延迟加载结束后触发,避免 onDrop 中被拖拽的节点是已经更新后的数据。

   * 【修改】setChkDisabled 方法,增加 inheritParent, inheritChildren 参数设置是否让父子节点继承 disabled

   * 【修改】异步加载时 拼接参数的方法,由 string 修改为 json 对象

   * 【修正】1-2-3 3级节点时,如果 2级节点 全部设置为 nocheck 或 chkDisabled后,勾选3级节点时,1级节点的半勾选状态错误的 bug

   * 【修改】Demo: checkbox_nocheck.html & checkbox_chkDisabled.html;

   * 【修改】Demo: edit_super.html,增加 showRenameBtn & showRemoveBtn 的演示

   * 【修改】Demo: asyncForAll, 将 post 修改为 get;为了避免由于 IE10 的 bug 造成的客户端 以及 服务端崩溃

      IE10 ajax Post 无法提交参数的bug (http://bugs.jquery.com/ticket/12790)

 

分享到:
评论
26 楼 clear_yang 2016-11-17  
jquery.ztree.excheck.min.js:15 Uncaught TypeError: Cannot read property 'consts' of undefined

报了这个错误,请问是什么原因
25 楼 chinaway 2013-03-01  
zTreeAPI 写道
chinaway 写道
麻烦问一下,3.0例子里边的样式
.ztree li button.add {margin-left:2px; margin-right: -1px; background-position:-112px 0px; vertical-align:top; *vertical-align:middle}

到3.5下面不能用了,我调整了位置为-148还是不行


非常抱歉,检查了一下,在 升级 v3.2 的log 中忽略了这部分内容,只是写在了当时的发布新闻内。
http://ztreeapi.iteye.com/blog/1527266

注意:需要升级 css 的


感谢,搞定了。
24 楼 zTreeAPI 2013-03-01  
chinaway 写道
麻烦问一下,3.0例子里边的样式
.ztree li button.add {margin-left:2px; margin-right: -1px; background-position:-112px 0px; vertical-align:top; *vertical-align:middle}

到3.5下面不能用了,我调整了位置为-148还是不行


非常抱歉,检查了一下,在 升级 v3.2 的log 中忽略了这部分内容,只是写在了当时的发布新闻内。
http://ztreeapi.iteye.com/blog/1527266

注意:需要升级 css 的
23 楼 chinaway 2013-02-28  
麻烦问一下,3.0例子里边的样式
.ztree li button.add {margin-left:2px; margin-right: -1px; background-position:-112px 0px; vertical-align:top; *vertical-align:middle}

到3.5下面不能用了,我调整了位置为-148还是不行
22 楼 hskww 2013-02-26  
zTreeAPI 写道
hskww 写道
...目前的做法就是勾选用户时,找到对应组节点,进行一些逻辑判断来更改此节点的属性,使用updateNode方法(checkNode 方法也一样)来进行树状态的关联。但有一种情况:A有u1,u2用户,当把u1的用户选中,u2不选中,在JS中使用updateNode或checkNode,发现它把A中的子组都选中了,希望A中的子组保持原样~~

父子关联关系可以自己控制呀,利用 setting.check.chkboxType

谢谢,问题已解决
21 楼 zTreeAPI 2013-02-25  
hskww 写道
...目前的做法就是勾选用户时,找到对应组节点,进行一些逻辑判断来更改此节点的属性,使用updateNode方法(checkNode 方法也一样)来进行树状态的关联。但有一种情况:A有u1,u2用户,当把u1的用户选中,u2不选中,在JS中使用updateNode或checkNode,发现它把A中的子组都选中了,希望A中的子组保持原样~~

父子关联关系可以自己控制呀,利用 setting.check.chkboxType
20 楼 hskww 2013-02-25  
zTreeAPI 写道
hskww 写道
hskww 写道
在使用Ztree中,有一个问题没找到解决方案,一组下面有子组和用户,用户不能展现在树中,默认下组的勾选与半勾选状态只与树中的节点关联,实际项目中要把组下的用户也当作组的子组来关联。
之前想到过两个方法:
1. 把用户加进树的结构,只不过把它隐藏,可是用JS把用户的checked属性变化,触发不了父级节点的联动
2. 在每次的checkbox的click事件中,加入自己的判断,由于用户不是树的结构,发现越改越乱

有解决方法吗?

我的理解如下:
树上只能显示组的信息; 实际应用中 组内还会有 用户信息,勾选 用户时要触发 树上 组的 checkbox 联动

如果是这样实现起来应该不难,建议如下:
1. 用户的信息中肯定会有所属的组的信息
2. 勾选用户时,根据对应组的信息可以利用 zTreeObj.getNodeByParam 或 getNodesByFilter 之类的方法获取到对应的 组的 节点数据
3. checkNode 方法可以进行勾选,默认情况下 zTree 会自动进行父子关联的

目前的做法就是勾选用户时,找到对应组节点,进行一些逻辑判断来更改此节点的属性,使用updateNode方法(checkNode 方法也一样)来进行树状态的关联。但有一种情况:A有u1,u2用户,当把u1的用户选中,u2不选中,在JS中使用updateNode或checkNode,发现它把A中的子组都选中了,希望A中的子组保持原样~~
19 楼 zTreeAPI 2013-02-23  
hskww 写道
hskww 写道
在使用Ztree中,有一个问题没找到解决方案,一组下面有子组和用户,用户不能展现在树中,默认下组的勾选与半勾选状态只与树中的节点关联,实际项目中要把组下的用户也当作组的子组来关联。
之前想到过两个方法:
1. 把用户加进树的结构,只不过把它隐藏,可是用JS把用户的checked属性变化,触发不了父级节点的联动
2. 在每次的checkbox的click事件中,加入自己的判断,由于用户不是树的结构,发现越改越乱

有解决方法吗?

我的理解如下:
树上只能显示组的信息; 实际应用中 组内还会有 用户信息,勾选 用户时要触发 树上 组的 checkbox 联动

如果是这样实现起来应该不难,建议如下:
1. 用户的信息中肯定会有所属的组的信息
2. 勾选用户时,根据对应组的信息可以利用 zTreeObj.getNodeByParam 或 getNodesByFilter 之类的方法获取到对应的 组的 节点数据
3. checkNode 方法可以进行勾选,默认情况下 zTree 会自动进行父子关联的
18 楼 hskww 2013-02-22  
hskww 写道
在使用Ztree中,有一个问题没找到解决方案,一组下面有子组和用户,用户不能展现在树中,默认下组的勾选与半勾选状态只与树中的节点关联,实际项目中要把组下的用户也当作组的子组来关联。
之前想到过两个方法:
1. 把用户加进树的结构,只不过把它隐藏,可是用JS把用户的checked属性变化,触发不了父级节点的联动
2. 在每次的checkbox的click事件中,加入自己的判断,由于用户不是树的结构,发现越改越乱

有解决方法吗?
17 楼 hskww 2013-02-22  
在使用Ztree中,有一个问题没找到解决方案,一组下面有子组和用户,用户不能展现在树中,默认下组的勾选与半勾选状态只与树中的节点关联,实际项目中要把组下的用户也当作组的子组来关联。
之前想到过两个方法:
1. 把用户加进树的结构,只不过把它隐藏,可是用JS把用户的checked属性变化,触发不了父级节点的联动
2. 在每次的checkbox的click事件中,加入自己的判断,由于用户不是树的结构,发现越改越乱
16 楼 zTreeAPI 2013-02-21  
775901421 写道
hello,可以问一下
刷新之后,如何保持树之前的状态呢

要自己cookie吗?

这种只好你自己cookie 了。。建议能用 webStorage 就用 webStorage;
如果用 cookie 建议不要保存全部数据,只保存关键节点的id 即可
15 楼 775901421 2013-02-21  
hello,可以问一下
刷新之后,如何保持树之前的状态呢

要自己cookie吗?
14 楼 tigerl 2013-02-20  
zTreeAPI 写道
tigerl 写道
你好,使用jquery1.9.1 的时候,左键点击Tree里的节点的时候报错,虽然不影响显示,但是在chrome控制台显示报错了,楼主可以测试下,我看到demo里引用的依然是jquery1.4,换成1.9.1

报错如下:
Uncaught TypeError: Cannot read property 'nodeName' of undefined jquery.ztree.core-3.5.js:614

hello,我已经发布到 github 上:http://plugins.jquery.com/zTree.v3/ 直接获取最新代码即可

感谢您在百忙之中修正问题!我也忙了一天,刚登陆博客!
13 楼 zTreeAPI 2013-02-20  
tigerl 写道
你好,使用jquery1.9.1 的时候,左键点击Tree里的节点的时候报错,虽然不影响显示,但是在chrome控制台显示报错了,楼主可以测试下,我看到demo里引用的依然是jquery1.4,换成1.9.1

报错如下:
Uncaught TypeError: Cannot read property 'nodeName' of undefined jquery.ztree.core-3.5.js:614

hello,我已经发布到 github 上:http://plugins.jquery.com/zTree.v3/ 直接获取最新代码即可
12 楼 zTreeAPI 2013-02-20  
yaodian 写道
setting里面的async里面的contentType 设置为 "application/json",无法生效,在3.5.01这个版本是可以的,但在3.5.02就不行了……

。。。麻烦你多做一下测试,我现在手头比较忙, 因为目前没有针对 async 部分做过任何修改呀
11 楼 zTreeAPI 2013-02-20  
p2bl 写道
感谢作者!

建议为 getNextNode 和 getPreNode 增加参数,可以设定是否必须在同一层

这个貌似就是在同一层内搜索的,不用限制的。
10 楼 p2bl 2013-02-20  
感谢作者!

建议为 getNextNode 和 getPreNode 增加参数,可以设定是否必须在同一层
9 楼 yaodian 2013-02-20  
setting里面的async里面的contentType 设置为 "application/json",无法生效,在3.5.01这个版本是可以的,但在3.5.02就不行了……
8 楼 zTreeAPI 2013-02-20  
tigerl 写道
你好,使用jquery1.9.1 的时候,左键点击Tree里的节点的时候报错,虽然不影响显示,但是在chrome控制台显示报错了,楼主可以测试下,我看到demo里引用的依然是jquery1.4,换成1.9.1

报错如下:
Uncaught TypeError: Cannot read property 'nodeName' of undefined jquery.ztree.core-3.5.js:614

非常感谢, 查看了一下 jquery 的代码,因为 srcElement 不规范,不符合 W3C 标准,所以在 jquery 1.9 中彻底删除了这个属性
将 代码中 var n = e.srcElement.nodeName.toLowerCase();
替换为 var n = e.originalEvent.srcElement.nodeName.toLowerCase();
就可以正常工作了, 我会抽空把这个修正先更新到 github 上.
7 楼 tigerl 2013-02-20  
你好,使用jquery1.9.1 的时候,左键点击Tree里的节点的时候报错,虽然不影响显示,但是在chrome控制台显示报错了,楼主可以测试下,我看到demo里引用的依然是jquery1.4,换成1.9.1

报错如下:
Uncaught TypeError: Cannot read property 'nodeName' of undefined jquery.ztree.core-3.5.js:614

相关推荐

    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