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

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

阅读更多

    为了学习如何在 jQuery Plugin 发布,反复练习后(因为那个版本号只能升,不能降),这次只得把版本 从 v3.5.02 直接升到 v3.5.12 了,请见谅。

 

    jQuery Pluginhttp://plugins.jquery.com/zTree.v3/

    GitHubhttps://github.com/zTree/zTree_v3

 

    为了避免老用户升级时修改 css 的麻烦,所以这次升级的目标还是还是尽量之修改 js 的 bug ,不去修改 css 文件;因此这次升级无法彻底解决 zTree 与 WordPress 同时使用时的样式冲突问题,只是一旦遇到冲突可以比较方便的修改而已(详细请看:https://github.com/zTree/zTree_v3/issues/2)。

 

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

 

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

 

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

 

   * 【修改】由于 jquery 1.9 中移除 event.srcElement 导致的 js 报错的bug。

   * 【修改】在异步加载模式下,使用 moveNode 方法,且 moveType != "inner" 时,也会导致 targetNode 自动加载子节点的 bug

   * 【修改】对已经显示的节点(nochecked=true)使用 showNodes 或 showNode 方法后,导致勾选框出现的bug。

   * 【修改】对已经隐藏的节点(nochecked=false)使用 hideNodes 或 hideNode 方法后,导致勾选框消失的bug。

   * 【修改】getNodesByParamFuzzy 支持 大小写模糊。

   * 【修改】className 结构,提取 _consts.className.BUTTON / LEVEL / ICO_LOADING / SWITCH,便于快速修改 css 冲突。

     例如:与 WordPress 产生冲突后,直接修改 core 中的 "button" 和 "level" 即可。  Issue: https://github.com/zTree/zTree_v3/issues/2

 

分享到:
评论
38 楼 zTreeAPI 2013-05-28  
hellofz 写道
请问高手,有没有这样的API, 我翻了下你的源码没有找到
tree.expandPath('node1/node2/node3/node4'), node1, node2, node3, node4都是不同节点的id,我想通过节点路径展开(所有的节点都是AJAX节点)。如果你有写过EXTJS tree,是有这个功能的。不过我更喜欢zTree,因为性能杠杠的。

非常感谢你的支持,不过很抱歉,目前的确没有专门制作这套功能,这个应该属于扩展的工具,等下一步抽空继续把 zTree 的框架完善之后,再来完善这些了。 类似的demo 请看:http://www.ztree.me/v3/demo.php#_512
37 楼 hellofz 2013-05-27  
请问高手,有没有这样的API, 我翻了下你的源码没有找到
tree.expandPath('node1/node2/node3/node4'), node1, node2, node3, node4都是不同节点的id,我想通过节点路径展开(所有的节点都是AJAX节点)。如果你有写过EXTJS tree,是有这个功能的。不过我更喜欢zTree,因为性能杠杠的。
36 楼 zTreeAPI 2013-05-26  
zachary.guo 写道
继续问一个问题,selectNode 仅仅是将 node 选中,即节点背景色为橘红色,单并不触发该节点的点击事件,即我想通过 js 选中节点打开该节点的 url。

如果使用 href 的方式,即使模拟触发点击事件也无法打开url 的。  对于这种情况,请直接在 selectNode 方法之后,用 js 根据节点数据操作页面跳转即可
35 楼 zachary.guo 2013-05-26  
继续问一个问题,selectNode 仅仅是将 node 选中,即节点背景色为橘红色,单并不触发该节点的点击事件,即我想通过 js 选中节点打开该节点的 url。
34 楼 zTreeAPI 2013-05-23  
zachary.guo 写道
请教一个问题,选择一个节点时,是通过鼠标点击。能否暴露一个接口,通过 js 去选择想要的节点,并且该节点的父节点都展开?

目前我没有发现有这样的接口。


selectNode 方法可以轻松实现你的功能。 当然了,如果你不想让节点被选中,直接利用 expandNode 方法展开其父节点,那么所有的父节点都会被展开的了
33 楼 zachary.guo 2013-05-23  
请教一个问题,选择一个节点时,是通过鼠标点击。能否暴露一个接口,通过 js 去选择想要的节点,并且该节点的父节点都展开?

目前我没有发现有这样的接口。
32 楼 zTreeAPI 2013-05-21  
唯一602 写道
在麻烦一下请教个问题

我现在用edit,节点后面设置修改按钮,在这个树里面我写了两个方法,一个是点击节点的方法,一个是点修改按钮触发的方法(方法是自己写的),现在我点修改按钮的时候也触发了点击节点的方法。现在想问一下,如何在点修改按钮的时候不触发点击节点的方法,或者有什么其它办法能实现这样的效果

查看demo中是如何实现的吧, 一般来说组织事件冒泡即可
31 楼 唯一602 2013-05-20  
在麻烦一下请教个问题

我现在用edit,节点后面设置修改按钮,在这个树里面我写了两个方法,一个是点击节点的方法,一个是点修改按钮触发的方法(方法是自己写的),现在我点修改按钮的时候也触发了点击节点的方法。现在想问一下,如何在点修改按钮的时候不触发点击节点的方法,或者有什么其它办法能实现这样的效果
30 楼 zTreeAPI 2013-05-19  
唯一602 写道
唯一602 写道
请教,我现在要修改某一个节点的name,但是不能在节点的编辑框编辑,而是直接在代码里给节点的name赋值,这个怎么实现啊?



updateNode(node,checkTypeFlag)  让我找的好苦。。。   这问题提的脸丢大了。。。

呵呵,没啥丢脸的,只能说我的 API 文档还需要改进, 入门教程不够完善
29 楼 唯一602 2013-05-18  
唯一602 写道
请教,我现在要修改某一个节点的name,但是不能在节点的编辑框编辑,而是直接在代码里给节点的name赋值,这个怎么实现啊?



updateNode(node,checkTypeFlag)  让我找的好苦。。。   这问题提的脸丢大了。。。
28 楼 唯一602 2013-05-18  
请教,我现在要修改某一个节点的name,但是不能在节点的编辑框编辑,而是直接在代码里给节点的name赋值,这个怎么实现啊?
27 楼 zTreeAPI 2013-04-18  
白浪滔天 写道
反馈个问题,为什么调用 addNodes方法前后,树的节点长度没有变化呢?
添加node前执行 alert( $.fn.zTree.getZTreeObj("tree-1").getNodes())
,添加node成功后再次执行,两次显示的长度是一样的。
这个问题,尝试过在调用addNodes后,执行reAsyncChildNodes、updateNode,甚至refresh方法,都是没有作用的。
请问这是什么原因呢?


请看 API, getNodes 得到的是 zTree 内部的根节点数据,所有的子孙节点都在 children 属性下,需要递归查看。 想省事儿的话请参考 transformToArray 方法。

所以如果你添加的不是根节点的话,那么 getNodes 得到的集合长度永远都是 根节点的数量。
26 楼 白浪滔天 2013-04-17  
反馈个问题,为什么调用 addNodes方法前后,树的节点长度没有变化呢?
添加node前执行 alert( $.fn.zTree.getZTreeObj("tree-1").getNodes())
,添加node成功后再次执行,两次显示的长度是一样的。
这个问题,尝试过在调用addNodes后,执行reAsyncChildNodes、updateNode,甚至refresh方法,都是没有作用的。
请问这是什么原因呢?

25 楼 zTreeAPI 2013-04-14  
doocal 写道
个人觉得应该增加可以自定义取json字段的功能,例如:
{"data":[{"id":"","pId":"","name":""}],"status":1,"desc":""}

我想以data做为树的类型,目前除了改源码好像没有相关的接口。


你应该是使用异步加载模式吧,直接利用 dataFilter 作处理就是了
24 楼 doocal 2013-04-13  
个人觉得应该增加可以自定义取json字段的功能,例如:
{"data":[{"id":"","pId":"","name":""}],"status":1,"desc":""}

我想以data做为树的类型,目前除了改源码好像没有相关的接口。
23 楼 zTreeAPI 2013-04-07  
toney_kissinger 写道
楼主是实在是对不起,刚发的贴子有一点写错了。
调用的  tree.expandAll(true); 出的问题,重复节点显示
贴子可写成了 tree.expandNode(true);

非常感谢,你发现的这个应该是一个bug,因为 鲜肉 这个节点被隐藏了,但还设置为 open:true 导致的! 我会尽快修正 这个bug。

目前快速解决方案:可以在初始化时不要设置 open 属性即可,或者说如果父节点不展开的节点,就不要设置 open:true 了
22 楼 toney_kissinger 2013-04-03  
楼主是实在是对不起,刚发的贴子有一点写错了。
调用的  tree.expandAll(true); 出的问题,重复节点显示
贴子可写成了 tree.expandNode(true);
21 楼 toney_kissinger 2013-04-03  
反映一个 使用过程中的BUG. 调用     tree.expandAll(true);     之后 树中会出现重复节点显示,如果不全展开就没会出理重复数据的错误现象。  操作上也会出问题,点多出来的节点 上面的 节点会联动。    如有时间请帮助查下,一直在用 ztree 感觉挺好的,没想到出这问题,我该怎么解决它呢? 这问题很是头痛。只列举了很少一部分数据:重复节点,【鲜猪肉、鲜鸡肉 】。谢谢您能有时间查阅

代码如下:


<!DOCTYPE html>
<HTML>
<HEAD>
<base target="_self">
<title>产品品类</title>
<meta http-equiv="Content-Type" content="text/html; charset=gbk">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<link rel="stylesheet" type="text/css" href="http://127.0.0.1:8080/Katrina/css/zTreeStyle/zTreeStyle.css" >
<script type="text/javascript" src="http://127.0.0.1:8080/Katrina/javascript/jquery-1.8.3.js"></script>
<script type="text/javascript" src="http://127.0.0.1:8080/Katrina/javascript/jquery.ztree.all-3.5.js"></script>

<script type="text/javascript" >
var contextPath = "http://127.0.0.1:8080/Katrina";
var DIM_VS="";
var mcheck = "false";
var onlyCheclLeaf = true;

var exceptNos = [1,2,3,4,5,6,7,8,9,10,11,12,13];

var zNodes =[{"id":"2","pid":"","name":"农副食品及动植物油","desc":"农副食品及动植物油","dataRowIndex":0,"isParent":true,"open":true,"children":[{"id":"27","pid":"2","name":"畜禽肉、油脂及食用杂碎","desc":"畜禽肉、油脂及食用杂碎","dataRowIndex":1,"isParent":true,"open":false,"children":[{"id":"104","pid":"27","name":"鲜肉","desc":"鲜肉","dataRowIndex":2,"isParent":true,"open":true,"children":[{"id":"255","pid":"104","name":"鲜猪肉","desc":"鲜猪肉","dataRowIndex":4,"isParent":true,"open":false,"children":[{"id":"385","pid":"255","name":"混合","desc":"混合","dataRowIndex":6,"children":[],"leaf":1}],"leaf":0},{"id":"256","pid":"104","name":"鲜鸡肉","desc":"鲜鸡肉","dataRowIndex":5,"isParent":true,"open":false,"children":[{"id":"393","pid":"256","name":"内脏类","desc":"内脏类","dataRowIndex":7,"children":[],"leaf":1}],"leaf":0}],"leaf":0},{"id":"105","pid":"27","name":"冻肉","desc":"冻肉","dataRowIndex":3,"children":[],"leaf":1}],"leaf":0}],"leaf":0}]
var  nodeList = [], lastIndex=0;

function onClick(event, treeId, treeNode, clickFlag) {
var zTree = $.fn.zTree.getZTreeObj("treeBox");
var id = treeNode["id"];
var tempID = parseInt(id);

if($.inArray(tempID,exceptNos)>=0){
return null;
}
if(onlyCheclLeaf == true && treeNode["children"] && treeNode["children"].length>0){
return null;
}
var name = treeNode["name"];
if(mcheck!="true"){
window.returnValue=[id,name]
window.close();
}

}
$(function(){
var treeConfig = {
check: {
enable: false,
chkboxType: { "Y": "s", "N": "s" }
},

callback: {
'onClick': onClick
}
};
var tree = $.fn.zTree.init($("#treeBox"), treeConfig  , zNodes);
tree.expandNode(true);

if(DIM_VS!="" && DIM_VS!="null"){
var node = tree.getNodeByParam("id", DIM_VS, null);
if(node){
tree.selectNode(node);
}
}

ebInitSearch('txt-search','btn-search','btn-search-next');
if(mcheck=="true"){
$("#btn-ok").show();
$("#btn-cancle").show();
}
if(mcheck == "true"){
$("#txt-search").css("width",100);
}
});
//获取ID==value的节点
function ebGetTreeNodeByID(value){
var zTree = $.fn.zTree.getZTreeObj("treeBox");
var node = zTree.getNodeByParam("id", value, null);
if(!node){
return null;
}
return node;
}
function ebGetCheckedNodes(){
var zTree = $.fn.zTree.getZTreeObj("treeBox");
var nodes = zTree.getChangeCheckedNodes();
return nodes;
}
//选中ID==value的节点
function ebCheckTreeNodeByID(value,changeChild){
if(changeChild==undefined){
changeChild = true;
}
var zTree = $.fn.zTree.getZTreeObj("treeBox");
var node = zTree.getNodeByParam("id", value, null);
if(node){
zTree.checkNode(node, true, changeChild);
}
}

function ebInitSearch(inputID,btnSearch,btnNext){
var obj = $("#"+inputID);
obj.keydown(function(e){
var keycode = e.keyCode;
if(keycode==13){
doSearchItem(inputID);
e.preventDefault();
}
});
if(btnSearch){
$("#"+btnSearch).click(function(){
doSearchItem(inputID);
});
}
if(btnNext){
$("#"+btnNext).click(function(){
doGoNextItem();
});
}

}
function doSearchItem(inputID){
var key = $("#"+inputID);
var v = key.val();
doUpdateNodes(false);
var zTree = $.fn.zTree.getZTreeObj("treeBox");
nodeList = zTree.getNodesByParamFuzzy("name", v);
if(nodeList.length>0){
doUpdateNodes(true);

zTree.selectNode(nodeList[0]);
lastIndex=0;
}else{
alert("没有符合条件的数据!");
}

}


function doUpdateNodes(highlight) {
var zTree = $.fn.zTree.getZTreeObj("treeBox");
for( var i=0, l=nodeList.length; i<l; i++) {
nodeList[i].highlight = highlight;
zTree.updateNode(nodeList[i]);
}
}
function doGoNextItem(){
if(nodeList.length >0){
var zTree = $.fn.zTree.getZTreeObj("treeBox");
if(lastIndex<nodeList.length){
zTree.selectNode(nodeList[++lastIndex]);
}else{
zTree.selectNode(nodeList[0]);
lastIndex=0;
}
}
}
function doOK(btn){
var nodes = ebGetCheckedNodes();
if(mcheck=="true"){
var names = [];
for(var i = 0;i<nodes.length;i++){
var t = nodes[i]["name"];
names[names.length]=t;
}
window.returnValue=names.join(",");
window.close();
}
}
</script>
</HEAD>
<BODY>

<center>
<table style="border:0px;margin-top:10px;" cellpadding="0" cellspacing="0">
<tr>
<td><input type="text" size="20" id="txt-search">&nbsp;</td>
<td>
<input type="button" id='btn-search' value="查找" class="ButtonStyle30" style="width:80px;">
<input type="button" id='btn-search-next' value="下一个" class="ButtonStyle30" style="width:80px;">
<input type="button" id='btn-ok' value="确定" class="ButtonStyle30" onclick="doOK(this);" style="width:80px;display:none;">
</td>
</tr>
</table>
<div style="height:430px;width:400px;text-align:center;overflow:auto;overflow-x:auto;overflow-y:auto;"><ul id="treeBox" class="ztree"></ul></div>
</center>
</BODY>
</HTML>
20 楼 toney_kissinger 2013-04-03  
楼主呀。反映一个 使用过程中的BUG.
调用 tree.expandAll(true); 之后 树中会出现重复节点显示,操作上也会出问题。如有时间请帮助查下,怎么解决? 这问题很是头痛。
代码如下:






<!DOCTYPE html>
<HTML>
<HEAD>
<base target="_self">
<title>产品品类</title>
<meta http-equiv="Content-Type" content="text/html; charset=gbk">
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<link rel="stylesheet" type="text/css" href="http://127.0.0.1:8080/Katrina/css/zTreeStyle/zTreeStyle.css" >
<script type="text/javascript" src="http://127.0.0.1:8080/Katrina/javascript/jquery-1.8.3.js"></script>
<script type="text/javascript" src="http://127.0.0.1:8080/Katrina/javascript/jquery.ztree.all-3.5.min.js"></script>

<script type="text/javascript" >
var contextPath = "http://127.0.0.1:8080/Katrina";
var DIM_VS="";
var mcheck = "false";
var onlyCheclLeaf = true;

var exceptNos = [1,2,3,4,5,6,7,8,9,10,11,12,13];

var zNodes =[{"id":"2","pid":"","name":"农副食品及动植物油","desc":"农副食品及动植物油","dataRowIndex":0,"isParent":true,"open":true,"children":[{"id":"27","pid":"2","name":"畜禽肉、油脂及食用杂碎","desc":"畜禽肉、油脂及食用杂碎","dataRowIndex":1,"isParent":true,"open":false,"children":[{"id":"104","pid":"27","name":"鲜肉","desc":"鲜肉","dataRowIndex":2,"isParent":true,"open":true,"children":[{"id":"255","pid":"104","name":"鲜猪肉","desc":"鲜猪肉","dataRowIndex":4,"isParent":true,"open":false,"children":[{"id":"385","pid":"255","name":"混合","desc":"混合","dataRowIndex":6,"children":[],"leaf":1}],"leaf":0},{"id":"256","pid":"104","name":"鲜鸡肉","desc":"鲜鸡肉","dataRowIndex":5,"isParent":true,"open":false,"children":[{"id":"393","pid":"256","name":"内脏类","desc":"内脏类","dataRowIndex":7,"children":[],"leaf":1}],"leaf":0}],"leaf":0},{"id":"105","pid":"27","name":"冻肉","desc":"冻肉","dataRowIndex":3,"children":[],"leaf":1}],"leaf":0}],"leaf":0}]
var  nodeList = [], lastIndex=0;

function onClick(event, treeId, treeNode, clickFlag) {
var zTree = $.fn.zTree.getZTreeObj("treeBox");
var id = treeNode["id"];
var tempID = parseInt(id);


if($.inArray(tempID,exceptNos)>=0){
return null;
}

if(onlyCheclLeaf == true && treeNode["children"] && treeNode["children"].length>0){
return null;
}

var name = treeNode["name"];

if(mcheck!="true"){
window.returnValue=[id,name]
window.close();
}


}
$(function(){


var treeConfig = {
check: {
enable: false,
chkboxType: { "Y": "s", "N": "s" }

},

callback: {
'onClick': onClick
}
};
var tree = $.fn.zTree.init($("#treeBox"), treeConfig  , zNodes);
tree.expandAll(true);

if(DIM_VS!="" && DIM_VS!="null"){
var node = tree.getNodeByParam("id", DIM_VS, null);
if(node){
tree.selectNode(node);
}
}

ebInitSearch('txt-search','btn-search','btn-search-next');
if(mcheck=="true"){
$("#btn-ok").show();
$("#btn-cancle").show();
}
if(mcheck == "true"){
$("#txt-search").css("width",100);
}
});
//获取ID==value的节点
function ebGetTreeNodeByID(value){
var zTree = $.fn.zTree.getZTreeObj("treeBox");
var node = zTree.getNodeByParam("id", value, null);
if(!node){
return null;
}
return node;
}
function ebGetCheckedNodes(){
var zTree = $.fn.zTree.getZTreeObj("treeBox");
var nodes = zTree.getChangeCheckedNodes();
return nodes;
}
//选中ID==value的节点
function ebCheckTreeNodeByID(value,changeChild){
if(changeChild==undefined){
changeChild = true;
}
var zTree = $.fn.zTree.getZTreeObj("treeBox");
var node = zTree.getNodeByParam("id", value, null);
if(node){
zTree.checkNode(node, true, changeChild);
}
}

function ebInitSearch(inputID,btnSearch,btnNext){
var obj = $("#"+inputID);

obj.keydown(function(e){
var keycode = e.keyCode;
if(keycode==13){
doSearchItem(inputID);
e.preventDefault();
}
});
if(btnSearch){
$("#"+btnSearch).click(function(){
doSearchItem(inputID);
});
}
if(btnNext){
$("#"+btnNext).click(function(){
doGoNextItem();
});
}

}
function doSearchItem(inputID){
var key = $("#"+inputID);
var v = key.val();
doUpdateNodes(false);
var zTree = $.fn.zTree.getZTreeObj("treeBox");

nodeList = zTree.getNodesByParamFuzzy("name", v);
if(nodeList.length>0){
doUpdateNodes(true);

zTree.selectNode(nodeList[0]);
lastIndex=0;
}else{
alert("没有符合条件的数据!");
}

}


function doUpdateNodes(highlight) {
var zTree = $.fn.zTree.getZTreeObj("treeBox");
for( var i=0, l=nodeList.length; i<l; i++) {
nodeList[i].highlight = highlight;
zTree.updateNode(nodeList[i]);
}
}
function doGoNextItem(){
if(nodeList.length >0){
var zTree = $.fn.zTree.getZTreeObj("treeBox");
if(lastIndex<nodeList.length){
zTree.selectNode(nodeList[++lastIndex]);
}else{
zTree.selectNode(nodeList[0]);
lastIndex=0;
}
}

}
function doOK(btn){
var nodes = ebGetCheckedNodes();
if(mcheck=="true"){
var names = [];
for(var i = 0;i<nodes.length;i++){
var t = nodes[i]["name"];
names[names.length]=t;
}

//if(window.opener && window.opener.window.doSetMReferenceValue){
// window.opener.window.doSetMReferenceValue(names.join(",")) ;
// window.close();
//}
window.returnValue=names.join(",");
window.close();
}
}
</script>
</HEAD>
<BODY>

<center>
<table style="border:0px;margin-top:10px;" cellpadding="0" cellspacing="0">
<tr>
<td><input type="text" size="20" id="txt-search">&nbsp;</td>
<td>
<input type="button" id='btn-search' value="查找" class="ButtonStyle30" style="width:80px;">
<input type="button" id='btn-search-next' value="下一个" class="ButtonStyle30" style="width:80px;">
<input type="button" id='btn-ok' value="确定" class="ButtonStyle30" onclick="doOK(this);" style="width:80px;display:none;">
</td>
</tr>
</table>
<div style="height:430px;width:400px;text-align:center;overflow:auto;overflow-x:auto;overflow-y:auto;"><ul id="treeBox" class="ztree"></ul></div>
</center>
</BODY>
</HTML>
19 楼 zTreeAPI 2013-03-29  
batwayne 写道
zTreeAPI 写道
batwayne 写道
请教一个问题,今天一下午都没弄好。树t1,把里面符合条件的叶子节点加到空树t2里面,被加进去的叶子节点的父节点也需要加入新树t2里面。可是当我把父节点加进去以后,树t1中父节点下的所有叶节点都跟着进到新树t2里面了,怎么解决这个问题呢?

因为父节点的数据中 有  children 属性,这里面包含着全部的子孙节点数据。。看你的需求也是需要那些 叶子节点的。。。所以你只需要做的是。。直接把 父节点 的数据深度 clone 出来,然后 把你要复制的这个子节点 的相邻节点全部删除掉,就 OK 了。 (建议你看看 zTree 的 clone 方法,拿出来改造一下,在深度复制的过程中就可以实现 过滤相邻节点的功能了)

折腾了很久,ztree的node的clone函数还是没写出来,没有实现clone功能,请指教

var clone = function (obj){
	if (obj === null) return null;
	var o = obj.constructor === Array ? [] : {};
	for(var i in obj){
		if(i != "children") {
			o[i] = (obj[i] instanceof Date) ? new Date(obj[i].getTime()) : (typeof obj[i] === "object" ? arguments.callee(obj[i]) : obj[i]);
		}
	}
	return o;
}


直接加个 if 就是了,这个代码我没测试,你试试看吧

相关推荐

    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