- 浏览: 345692 次
- 性别:
- 来自: 北京
最新评论
-
javabro:
求告知,ztree中自己在点onclick () 通过获取tI ...
本人从今以后不再维护这里的博客, 只在 开源中国 进行发布 -
sinoyang:
使用的时候发现与bootstrap冲突了,蛋疼死了,改哪个都不 ...
JQuery Tree插件——zTree v3.5.16 版 发布 -
clear_yang:
jquery.ztree.excheck.min.js:15 ...
JQuery Tree插件——zTree v3.5.02 版 发布 -
路人NFTS:
请教个问题,ztree 支持异步加载的扩展么? 因为跨域,IE ...
JQuery Tree插件——zTree v3.5.16 版 发布 -
kainever7:
页面初始化时,通过<iframe src=". ...
JQuery Tree插件——zTree v3.5.16 版 发布
选在情人节发布 zTree v3.1,希望 zTree 能够拥有更多的“粉丝”。
这次 v3.1 整体改动不大,但因为修改了 css 和 图片,所以升级时需要注意了!
另外,应不少朋友的要求,我把 API 的页面抽取出来,做了一个简易版的 API 离线文档,方便大家使用。
在线操作演示:http://www.baby666.cn/v3/demo.php#_101
快速下载地址:http://code.google.com/p/jquerytree/downloads/list
下面是 v3.1 的修改记录:
* 【增加】ajax 的参数 setting.async.contentType ,让提交参数适用于 json 数据提交 (主要适用于 .Net 的开发)。
* 【增加】setting.edit.editNameSelectAll, 用于设定编辑节点名称时初次显示 input 后 text 内容为全选
* 【修改】异步加载 规则,不再仅仅依靠父节点的子节点数来判定,增加内部属性 zAsync,保证默认状态下父节点及时无子节点也只能异步加载一次,除非使用 reAsyncChildNodes 方法强行控制异步加载。
* 【修改】放大浏览器后导致 界面出现多余连接线的bug (需要更新:icon 图标和 css )
* 【修改】在编辑状态,如果节点名超过编辑框宽度,左右键在框内不起作用的bug(IE 6 7 8 出现)
CSS 中 filter:alpha(opacity=80) 造成的,应该是 ie 的 bug,需要更新 css 文件
* 【修改】title 设置后,如果属性不存在,则默认为 title 为空,便于数据容错和用户灵活使用
* 【修改】editName 方法如果针对尚未展开的 父节点,会导致该父节点自动展开的 bug
* 【修改】title 中存在标签时导致 title 显示异常的bug(例如:蓝色字22%"'<input/>)
评论
关键是 $("a[target=navTab]", $p) 这个不区分哪一级的呀,只要满足要求的 DOM 都会获取到的。今天比较忙,请你先自己调试一下,看看你each 中是不是应该找到的全部DOM 集合
不是啊,我要把ztree整合到DWZ富框架中,因为他原来那个左侧树很不喜欢。所以就折腾了这么一晚上。他的左侧树需要扑捉A标签的target="navTab"和rel="tabid",查看了下他的dwz.ui.js,发现他是用我说的那样方法捕获target="navtab"的,然后会在右侧打开。
不是啊,我要把ztree整合到DWZ富框架中,因为他原来那个左侧树很不喜欢。所以就折腾了这么一晚上。他的左侧树需要扑捉A标签的target="navTab"和rel="tabid",查看了下他的dwz.ui.js,发现他是用我说的那样方法捕获target="navtab"的,然后会在右侧打开。
我也在整合dwz和ztree,也碰到了同样的问题,求解。。。
// navTab $("a[target=navTab]", $p).each(function() { $(this).click(function(event) { var $this = $(this); var title = $this.attr("title") || $this.text(); var tabid = $this.attr("rel") || "_blank"; var fresh = eval($this.attr("fresh") || "true"); var external = eval($this.attr("external") || "false"); var url = unescape($this.attr("href")).replaceTmById($(event.target).parents(".unitBox:first")); DWZ.debug(url); if (!url.isFinishedTm()) { alertMsg.error($this.attr("warn") || DWZ.msg("alertSelectMsg")); return false; } navTab.openTab(tabid, url, { title: title, fresh: fresh, external: external }); event.preventDefault(); }); });
这是他的捕获方法,可以只能扑捉到一级菜单的target="navTab"
不是啊,我要把ztree整合到DWZ富框架中,因为他原来那个左侧树很不喜欢。所以就折腾了这么一晚上。他的左侧树需要扑捉A标签的target="navTab"和rel="tabid",查看了下他的dwz.ui.js,发现他是用我说的那样方法捕获target="navtab"的,然后会在右侧打开。
我用了$("a[target=navTab]", $p).each(function(){}来变量,但找出来的只是一级节点,以下的都没有了,用firebug查看了代码,发现没问题啊!
请指点,初学jquery,有不对的地方请海涵。谢谢啦
一看时间居然是 临晨四点!!! 你好厉害呀!!大家互相沟通,交流,不用客气,只不过别有了问题自己不去思考直接问人就是了。
关于你的问题:请你确认是否真的给所有节点都加上了这个 target="navTab" 的标签。 单传看语法,我觉得没什么问题
谢谢回复!
是这样的,我在core/simpleData.html这个例子的叶子节点中加了target="navTab",然后在$.fn.zTree.init($("#treeDemo"), setting, zNodes);的下面增加了
$("a[target=navTab]").each(function(){ $(this).click(function(event){ alert('点击了我!'); }); });
这样问题就来了,点击叶子节点的时候都不会弹出,这是什么问题呢?
原来你要捕获点击节点的操作呀,为何要这么操作???? 请看 setting.callback.beforeClick 和 onClick 两个回调函数
我用了$("a[target=navTab]", $p).each(function(){}来变量,但找出来的只是一级节点,以下的都没有了,用firebug查看了代码,发现没问题啊!
请指点,初学jquery,有不对的地方请海涵。谢谢啦
一看时间居然是 临晨四点!!! 你好厉害呀!!大家互相沟通,交流,不用客气,只不过别有了问题自己不去思考直接问人就是了。
关于你的问题:请你确认是否真的给所有节点都加上了这个 target="navTab" 的标签。 单传看语法,我觉得没什么问题
谢谢回复!
是这样的,我在core/simpleData.html这个例子的叶子节点中加了target="navTab",然后在$.fn.zTree.init($("#treeDemo"), setting, zNodes);的下面增加了
$("a[target=navTab]").each(function(){ $(this).click(function(event){ alert('点击了我!'); }); });
这样问题就来了,点击叶子节点的时候都不会弹出,这是什么问题呢?
我用了$("a[target=navTab]", $p).each(function(){}来变量,但找出来的只是一级节点,以下的都没有了,用firebug查看了代码,发现没问题啊!
请指点,初学jquery,有不对的地方请海涵。谢谢啦
一看时间居然是 临晨四点!!! 你好厉害呀!!大家互相沟通,交流,不用客气,只不过别有了问题自己不去思考直接问人就是了。
关于你的问题:请你确认是否真的给所有节点都加上了这个 target="navTab" 的标签。 单传看语法,我觉得没什么问题
我用了$("a[target=navTab]", $p).each(function(){}来变量,但找出来的只是一级节点,以下的都没有了,用firebug查看了代码,发现没问题啊!
请指点,初学jquery,有不对的地方请海涵。谢谢啦
如果这套树控件能应用于表格中,将更好!
目前这个 zTree 的HTML结构不太容易制作表格了。。。等 zTree 基本完成后,我会在这套代码的架构上制作 table 的。不过肯定不是最近的事情了。不好意思
如果这套树控件能应用于表格中,将更好!
我很同意你的观点“应该把选择权交给用户会更好”,所以 zTree 在制作时是以数据为核心,并且尽量避免干扰用户初始化的数据,同时尽量提供更多的接口以及灵活的配置方案来实现各种需求。
和你探讨这些没有别的意思,也为了再进一步去反思自己的决策,只有不断的在不同意见中思考才能得到更有价值的想法。
对于 zTree 在v3.x中做的延迟加载,就是为了对于 全国省市县这种数据一次性加载提升速度的。 你的例子算是一种折中需求,曾经有朋友提到用 异步加载的方式,但又要用 expandAll 方法一下子展开全部节点。。。这种矛盾就会凸现出来。 这也是为何 zTree 的 expandAll 并没有专门去实现逐步自动异步加载全部节点功能的原因。
至于选择何种实现方式,的确是要在 性能、开发便捷性、合理性上去找到一个平衡点。我不否认,有时候也会出现鱼与熊掌不可兼得的冲突发生,这种时候就只能进行取舍。
就像你觉得 exedit 有点儿庞大一样,我现在也需要认真考虑这个问题,不能随随便便任意添加功能,让 zTree 继续臃肿下去,这是在自杀。 所以我是要在和你探讨的过程中来挖掘这种需求的必要性以及适用范围,并且要考虑是否可以利用已有的功能轻易实现。
所以,如果最终 并没有如你所愿添加这种更加灵活的 callback,也希望你能谅解,但我肯定会继续认真思考这个问题的,还包括那个 addNodes 和 removeNode 的问题。
再次感谢。
感谢作者的用心,每次问问题都能很快得到答复,非常感谢,我提出的方式也只是参考,因为没有对源码进行深入研究,无法从全局性角度去思考,只是根据自己遇到的问题所期望有更合理的解决方法,也相信作者能够综合各方面的考虑,把zTree做得更好。
我很同意你的观点“应该把选择权交给用户会更好”,所以 zTree 在制作时是以数据为核心,并且尽量避免干扰用户初始化的数据,同时尽量提供更多的接口以及灵活的配置方案来实现各种需求。
和你探讨这些没有别的意思,也为了再进一步去反思自己的决策,只有不断的在不同意见中思考才能得到更有价值的想法。
对于 zTree 在v3.x中做的延迟加载,就是为了对于 全国省市县这种数据一次性加载提升速度的。 你的例子算是一种折中需求,曾经有朋友提到用 异步加载的方式,但又要用 expandAll 方法一下子展开全部节点。。。这种矛盾就会凸现出来。 这也是为何 zTree 的 expandAll 并没有专门去实现逐步自动异步加载全部节点功能的原因。
至于选择何种实现方式,的确是要在 性能、开发便捷性、合理性上去找到一个平衡点。我不否认,有时候也会出现鱼与熊掌不可兼得的冲突发生,这种时候就只能进行取舍。
就像你觉得 exedit 有点儿庞大一样,我现在也需要认真考虑这个问题,不能随随便便任意添加功能,让 zTree 继续臃肿下去,这是在自杀。 所以我是要在和你探讨的过程中来挖掘这种需求的必要性以及适用范围,并且要考虑是否可以利用已有的功能轻易实现。
所以,如果最终 并没有如你所愿添加这种更加灵活的 callback,也希望你能谅解,但我肯定会继续认真思考这个问题的,还包括那个 addNodes 和 removeNode 的问题。
再次感谢。
只要是异步加载都会触发 onAsyncSuccess 的,你可以考虑对 treeNode 添加特殊属性标识 是否是 reAsyncChildNodes 对其进行的操作。
不知道你的实际情况,做这种操作请注意避免由于多个异步导致的一些同步问题。
如果 reAsyncChildNodes 允许传递 callback 函数就好了。
这个想法不错,但是否确定要增加这种功能,我还需要考虑,请你先曲线救国吧
其实个人觉得callback方式很实用,包括expandNode方法,如果有一个callback方式的话,能够解决很多问题,如一棵异步树,我要初始选择指定项,这样我可以用callback里继续expandNode节点,直到展开到我需要选中的节点即可,而现在都是通过 onAsyncSuccess,根本无从知道触发加载的源始意图。
1、对于 callback 具体如何实现需要考虑,而且 onExpand 也是针对 expandNode 的回调。感觉你这里最大的问题是针对异步加载时 如何区分 是自动异步加载 还是 js 强行异步加载 还是 由于 js 展开导致的异步加载。
2、对于你举得例子,为何不能直接一次性把节点都加载呢? 对于异步加载如果还要自动不断展开再次异步加载。。。这样的时候,效率反倒会降低的。
如果能够一次性加载全部节点,你只需要用 selectNode 方法,就能立刻实现你需要的功能。
异步的优势在于大数据量,如果数据量较大,比如全国的省市县所有数据的话,都会有上百KB,会导致初次加载很慢。相反如果使用异步的话应该会更快,我觉得应该把选择权交给用户会更好,Thanks~
只要是异步加载都会触发 onAsyncSuccess 的,你可以考虑对 treeNode 添加特殊属性标识 是否是 reAsyncChildNodes 对其进行的操作。
不知道你的实际情况,做这种操作请注意避免由于多个异步导致的一些同步问题。
如果 reAsyncChildNodes 允许传递 callback 函数就好了。
这个想法不错,但是否确定要增加这种功能,我还需要考虑,请你先曲线救国吧
其实个人觉得callback方式很实用,包括expandNode方法,如果有一个callback方式的话,能够解决很多问题,如一棵异步树,我要初始选择指定项,这样我可以用callback里继续expandNode节点,直到展开到我需要选中的节点即可,而现在都是通过 onAsyncSuccess,根本无从知道触发加载的源始意图。
1、对于 callback 具体如何实现需要考虑,而且 onExpand 也是针对 expandNode 的回调。感觉你这里最大的问题是针对异步加载时 如何区分 是自动异步加载 还是 js 强行异步加载 还是 由于 js 展开导致的异步加载。
2、对于你举得例子,为何不能直接一次性把节点都加载呢? 对于异步加载如果还要自动不断展开再次异步加载。。。这样的时候,效率反倒会降低的。
如果能够一次性加载全部节点,你只需要用 selectNode 方法,就能立刻实现你需要的功能。
请用 removeNode 方法删除单独节点;如果清空子节点可以利用 removeChildNodes 方法,如果让树全部清空,那么用空节点重新初始化一下即可。
只要是异步加载都会触发 onAsyncSuccess 的,你可以考虑对 treeNode 添加特殊属性标识 是否是 reAsyncChildNodes 对其进行的操作。
不知道你的实际情况,做这种操作请注意避免由于多个异步导致的一些同步问题。
如果 reAsyncChildNodes 允许传递 callback 函数就好了。
这个想法不错,但是否确定要增加这种功能,我还需要考虑,请你先曲线救国吧
其实个人觉得callback方式很实用,包括expandNode方法,如果有一个callback方式的话,能够解决很多问题,如一棵异步树,我要初始选择指定项,这样我可以用callback里继续expandNode节点,直到展开到我需要选中的节点即可,而现在都是通过 onAsyncSuccess,根本无从知道触发加载的源始意图。
只要是异步加载都会触发 onAsyncSuccess 的,你可以考虑对 treeNode 添加特殊属性标识 是否是 reAsyncChildNodes 对其进行的操作。
不知道你的实际情况,做这种操作请注意避免由于多个异步导致的一些同步问题。
如果 reAsyncChildNodes 允许传递 callback 函数就好了。
这个想法不错,但是否确定要增加这种功能,我还需要考虑,请你先曲线救国吧
这个问题值得探讨,是否需要把 addNodes() 和 removeNode() 以及 removeChildNodes() 这几个方法都提到 core 的核心包中呢? 貌似添加、删除节点还是比较常用的,并不是一定要用来编辑树的。
exedit 体积大主要是实现了更灵活的拖拽、移动、复制、编辑等功能。
发表评论
-
JQuery Tree插件——zTree v3.5.16 版 发布
2014-03-09 20:09 33141zTree v3.5.16 发布,继续缓慢的修正 bug ... -
JQuery Tree插件——zTree v3.5.15 版 发布
2013-10-21 09:30 14114zTree v3.5.15 发布,继续 ... -
JQuery Tree插件——zTree v3.5.14 版 发布
2013-06-29 00:36 7034在 v3.5.13 中由于个人疏漏,产生了一个比较严重 ... -
JQuery Tree插件——zTree v3.5.13 版 发布
2013-06-02 21:43 6661近期由于工作繁忙,所以一直没有发布 v3.5.13 ... -
JQuery Tree插件——zTree v3.5.12 版 发布
2013-03-11 11:13 13241为了学习如何在 jQuery Plugin 发布,反 ... -
JQuery Tree插件——zTree v3.5.02 版 发布
2013-01-28 10:34 10491首先要告诉大家,在 jQuery 发布了插件注册功能 ... -
zTree v3.5 Css 详解
2012-12-24 09:37 18006zTree 的 css 文件 ... -
JQuery Tree插件——zTree v3.5.01 版 发布
2012-12-21 10:37 3765赶着天黑前,赶紧发布 v3.5 的补丁,修正目前 ... -
JQuery Tree插件——zTree v3.5 正式版 发布
2012-11-20 09:50 13985由于国庆之后一直忙于公司的项目,因此将 zTre ... -
JQuery Tree插件——zTree v3.4 正式版 发布
2012-09-03 10:55 7496这次 v3.4 主要还是修改一些细节 bug, ... -
JQuery Tree插件——zTree v3.3 正式版 发布
2012-07-16 12:54 8734这次 zTree v3.3 继续 ... -
简述如何制作 zTree v3.x 系列的扩展 js 库
2012-06-29 15:31 3005zTree v3.x 版本修改了结构,将原先混在 ... -
JS 代码调试经验总结(菜鸟必读)
2012-06-12 18:03 19951前言:不知不觉写了很多,希望你能耐心看完这篇文章 ... -
启用新域名—— zTree.me
2012-05-24 14:11 2121折腾一上午,终于启用 新域名 zTree.me 欢迎各 ... -
JQuery Tree插件——zTree v3.2 正式版 发布
2012-05-14 13:53 6929因最近本人工作较忙,所以 v3.2 拖了很久,还 ... -
CSS Sprites 使用注意之—— 避免因浏览器放大导致的图片异常
2012-02-02 14:34 2719近日有朋友说,将浏览器放大后,会发现 zTree 出现 ... -
IE 下 css 设置透明度造成 input 内光标异常的问题
2012-02-01 14:01 4101zTree v3.0 正式版发 ... -
zTree v2.x 升级 v3.0 之 异步加载 与 添加节点的错误分析
2012-01-13 16:34 4458(补充: 计划 v3.1 中修改进行异步加载的逻辑 ... -
JQuery Tree插件——zTree v3.0 正式版 发布
2012-01-10 09:39 6389在大家的帮助 和 关注下,今天 zTree v3 ... -
国庆前,zTree 开发推迟
2011-09-19 09:20 2626大家好,由于本人工作原因,国庆前会相当忙,因此 zTr ...
相关推荐
**jQuery zTree V3.1 ...综上所述,jQuery zTree V3.1是一个功能全面、易用性强的树形插件,适用于各种需要展示和操作树形结构数据的场景。通过深入理解和熟练运用其API,开发者可以轻松构建出富有交互性的树形界面。
**jQuery zTree v3.1 完整API详解** `jQuery zTree` 是一个基于 jQuery 的强大树形插件,广泛应用于网站导航、组织结构展示、文件管理等场景。v3.1 版本提供了丰富的功能和完善的API,使得开发者能够更加灵活地定制...
JQuery zTree v3.1 API
**jQuery zTree v3.1** 是一个基于jQuery的开源JavaScript库,专门用于构建树形结构的控件。它在Web开发中广泛应用于文件管理、组织结构展示、导航菜单等场景,提供了丰富的功能和高度的可定制性。zTree的核心特性...
总结,jQuery zTree v3.1是一个强大且易用的树形插件,具备丰富的API、多样的功能和良好的用户体验。无论是初学者还是经验丰富的开发者,都能从中找到满足需求的解决方案。通过深入学习和实践,我们可以将zTree灵活...
这是我整理的ztree树形插件的API,其版本是V3.1,希望对大家有所帮助
【标题】"archive_zTree(JQuery Tree) v3.1.zip.zip" 提供的是一个用于构建树形结构的jQuery插件——zTree的v3.1版本。zTree是一款广泛应用于网页开发中的JavaScript库,它使得在网页上展示层级关系的数据变得更加...
zTree 是利用 JQuery 的核心代码,实现一套能完成大部分常用功能的 Tree 插件 兼容 IE、FireFox、Chrome 等浏览器(对于IE 6的兼容问题将不做特殊维护) 在一个页面内可同时生成多个 Tree 实例 支持 JSON 数据 支持...
总的来说,`JQuery-zTree-v3.1.rar`提供的zTree插件是一个功能强大且易于使用的工具,无论是在前端开发还是后台管理界面,都能发挥出其强大的作用。通过深入理解和实践,开发者可以灵活运用zTree来创建满足需求的树...
从给出的文件列表来看,`zTree(JQuery Tree) v3.1.txt`可能包含的是关于zTree v3.1的使用说明、API文档或者示例代码,而`zTree(JQuery Tree) v3.1.zip`则可能是zTree插件的源码和资源文件,包括CSS样式、JavaScript...
**zTree 3.1 API 全面解析** 在IT领域,树形结构是一种常见的数据表示方式,尤其在用户界面设计中,用于展示层级关系的数据。zTree是一款基于JavaScript的优秀树形插件,适用于Eclipse开发环境。本文将深入探讨...
JQuery zTree 是一个基于 jQuery 的插件,用于在网页中构建交互式的树形结构。v3.4 版本是其稳定且功能丰富的版本之一,适用于多种应用场景,如数据展示、导航菜单、文件目录等。它以其易用性、高效性和强大的功能...
JQuery zTree是一款基于JavaScript的开源树...总之,JQuery zTree v3.3是一个强大且易用的JavaScript树形插件,它通过提供多种操作功能、良好的性能以及灵活的定制选项,满足了开发者在构建网页树形结构时的各种需求。
2、在一个页面内可同时生成多个 Tree 实例 3、支持 JSON 数据 4、支持一次性静态生成 和 Ajax 异步加载 两种方式 5、支持多种事件响应及反馈 6、支持 Tree 的节点移动、编辑、删除 7、支持极其灵活的 checkbox...
这个压缩包包含四个不同的jQuery树形插件:zTree、jQuery UI Treeview、jQuery UI Draggable Tree和jQuery Simple Treeview。这些插件各有特色,适用于不同的项目需求。 首先,zTree是一款功能强大的jQuery插件,...
zTree 是一个基于 jQuery 的灵活、强大的树形插件,主要用于实现数据的展示和交互,广泛应用于文件管理、菜单系统、组织结构展示等多个场景。zTree 3.1 版本是对该插件的进一步优化和完善,提供了丰富的 API 接口,...
**jQuery zTree 插件详解** zTree 是一个基于 jQuery 的强大树形控件,它在Web开发中被广泛应用于构建动态的、交互式的树形结构。zTree 的设计目标是提供高性能、易于配置和丰富的功能,使得开发者可以轻松地在网页...
JQuery-zTree是一款基于jQuery的树形插件,它提供了丰富的功能和良好的性能,尤其适用于构建树形结构的菜单和数据展示。在移动端应用中,zTree能够自适应屏幕尺寸,提供良好的用户体验。本项目提供的代码是针对...