v2版本正式上线测试版
48
static/zTree3/README.md
Normal file
@@ -0,0 +1,48 @@
|
||||
jQuery Tree Plugin ---- zTree
|
||||
============
|
||||
last verson : 3.5.28
|
||||
|
||||
|
||||
**Donate to zTree** : http://www.treejs.cn/v3/donate.php
|
||||
|
||||
|
||||
zTree API : http://www.treejs.cn/v3/api.php
|
||||
|
||||
|
||||
zTree Demo : http://www.treejs.cn/v3/demo.php
|
||||
|
||||
|
||||
Introduction of zTree (简介)
|
||||
============
|
||||
* zTree is a multi-functional "tree plug-ins." based on jQuery. The main advantages of zTree includes excellent performance, flexible configuration, and the combination of multiple functions.
|
||||
(zTree 是一个依靠 jQuery 实现的多功能 “树插件”。优异的性能、灵活的配置、多种功能的组合是 zTree 最大优点。)
|
||||
|
||||
* zTree is a free tree plug-in and uses the MIT license.
|
||||
(zTree 是开源免费的软件, 使用 MIT 许可证)
|
||||
|
||||
* The code of zTree v3.x has been seperated according to the various functions. You can only load the code you need.
|
||||
(zTree v3.x 将核心代码按照功能进行了分割,不需要的代码可以不用加载)
|
||||
* zTree v3.x uses delay loading technique, which can easily load tens of thousands of nodes in seconds even in IE6 browser.
|
||||
(采用了 延迟加载 技术,上万节点轻松加载,即使在 IE6 下也能基本做到秒杀)
|
||||
* Compatible with IE, FireFox?, Chrome, Opera, Safari and other browsers.
|
||||
(兼容 IE、FireFox?、Chrome、Opera、Safari 等浏览器)
|
||||
* Support for JSON data.
|
||||
(支持 JSON 数据)
|
||||
* Support for static and asynchronous data loading node.
|
||||
(支持静态 和 Ajax 异步加载节点数据)
|
||||
* Replace the skin / custom icon flexibllly.
|
||||
(支持任意更换皮肤 / 自定义图标)
|
||||
* Support extremely flexible checkbox or radio selection function.
|
||||
(支持极其灵活的 checkbox 或 radio 选择功能)
|
||||
* Provide enough incident response callback.
|
||||
(提供多种事件响应回调)
|
||||
* Flexible editing (add / delete / change / search) functions, such as drag and drop nodes,you can even drag and drop multiple nodes.
|
||||
(灵活的编辑(增/删/改/查)功能,可随意拖拽节点,还可以多节点拖拽哟)
|
||||
* Enable to generate multiple instances of zTree in one page.
|
||||
(在一个页面内可同时生成多个 Tree 实例)
|
||||
* Simple parameters to achieve flexible configuration capabilities.
|
||||
(简单的参数配置实现 灵活多变的功能)
|
||||
* To enhance performance, zTree transforms the js & css structure to provide excellent browser compatibility and make the development more easily
|
||||
(zTree v3.x(JQuery Tree 插件),性能全面提升,js & css 架构全面调整,提供更好的兼容性和易开发性)
|
||||
|
||||
|
||||
103
static/zTree3/api/API_cn.html
Normal file
@@ -0,0 +1,103 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>API 文档 [zTree -- jQuery 树插件]</title>
|
||||
<link rel="stylesheet" href="apiCss/common.css" type="text/css">
|
||||
<link rel='stylesheet' href='apiCss/zTreeStyleForApi.css' type='text/css'>
|
||||
<script type="text/javascript">
|
||||
var ie = (function(){
|
||||
var undef,
|
||||
v = 3,
|
||||
div = document.createElement('div'),
|
||||
all = div.getElementsByTagName('i');
|
||||
while (
|
||||
div.innerHTML = '<!--[if gt IE ' + (++v) + ']><i></i><![endif]-->',
|
||||
all[0]
|
||||
);
|
||||
return v > 4 ? v : undef;
|
||||
}()), ie6 = (ie === 6),
|
||||
path = window.location.pathname.replace(/.*\/([^\/\.]*)\..*/g,"$1"),
|
||||
langLib = [];
|
||||
ie = ie<9;
|
||||
if(ie) {
|
||||
document.write('<link rel="stylesheet" href="apiCss/common_ie6.css" type="text/css">');
|
||||
}
|
||||
var lang = "cn",
|
||||
ajaxMsg = "如果你使用的是 Chrome 浏览器,那么请把 API 文档发布到 web 服务目录下访问。\n\n(Chrome 浏览器不支持本地 ajax 访问, 即:file://)";
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="header_wrap" class="header_wrap" style="padding-top: 30px;">
|
||||
<div id="header" class="header round">
|
||||
<div class="light-bulb" alt=""></div>
|
||||
<div class="ieSuggest">浏览本网站建议您使用 Chrome、FireFox、Opera、IE9 等浏览器(只要不是 IE6 7 8 就行), 速度会更快,画面会更炫!</div>
|
||||
<div class="google_plus"><g:plusone></g:plusone></div>
|
||||
<div class="header-text">
|
||||
<h1><em>zTree v3.5.27 API 文档</em></h1><p></p>
|
||||
<p>all.js = core + excheck + exedit ( 不包括 exhide ); 发现错误请及时通知,谢谢。</p>
|
||||
</div>
|
||||
<ul class="shortcuts language" style="top:0;">
|
||||
<li><a href="API_en.html" onclick="window.location.href='API_en.html'"><button class="ico en" title="英文版" type="button"></button><span class=""></span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id="content_wrap" class="content_wrap">
|
||||
<div id="content" class="content">
|
||||
<div class="nav_section">
|
||||
<ul>
|
||||
<li class="first">注释:</li>
|
||||
<li><button class="ico16 z_core" onfocus="this.blur();"></button><span>core 核心包</span></li>
|
||||
<li><button class="ico16 z_check" onfocus="this.blur();"></button><span>excheck 扩展</span></li>
|
||||
<li><button class="ico16 z_edit" onfocus="this.blur();"></button><span>exedit 扩展</span></li>
|
||||
<li><button class="ico16 z_hide" onfocus="this.blur();"></button><span>exhide 扩展</span></li>
|
||||
<li class="noline">
|
||||
<button class="ico16 z_search" onfocus="this.blur();" title="Enter 以及 左、右键可以快速定位查找结果"></button>
|
||||
<input type="text" class="searchKey search empty" value=""><input type="text" class="searchResult search" value="">
|
||||
<button class="ico16 searchPrev disabled" onfocus="this.blur();" title="Enter 以及 左、右键可以快速定位查找结果"></button><button class="ico16 searchNext disabled" onfocus="this.blur();" title="Enter 以及 左、右键可以快速定位查找结果"></button>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="contentBox" class="contentBox round clearfix">
|
||||
<div id="apiContent" class="apiContent">
|
||||
<div id="api_setting" class="api_setting left">
|
||||
<ul class="api_content_title"><li>setting 配置详解</li></ul>
|
||||
<ul id="settingTree" class="ztree"></ul>
|
||||
</div>
|
||||
<div id="api_function" class="api_function right">
|
||||
<ul class="api_content_title"><li>zTree 方法详解</li></ul>
|
||||
<ul id="functionTree" class="ztree"></ul>
|
||||
<ul class="api_content_title"><li>treeNode 节点数据详解</li></ul>
|
||||
<ul id="treenodeTree" class="ztree"></ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- overlayed -->
|
||||
<div id="overlayDiv" class="baby_overlay">
|
||||
<div id="overlayContent" class="content round clearfix">
|
||||
<div class="overlaySearch">
|
||||
<button class="ico16 z_search" onfocus="this.blur();" title="Enter 以及 左、右键可以快速定位查找结果"></button>
|
||||
<input type="text" class="searchKey search empty" value=""><input type="text" class="searchResult search" value="">
|
||||
<button class="ico16 searchPrev disabled" onfocus="this.blur();" title="Enter 以及 左、右键可以快速定位查找结果"></button><button class="ico16 searchNext disabled" onfocus="this.blur();" title="Enter 以及 左、右键可以快速定位查找结果"></button>
|
||||
</div>
|
||||
<a id="overlayDivCloseBtn" class="close"></a>
|
||||
<div id="overlayDetailDiv" class="details"></div>
|
||||
</div>
|
||||
<div id="overlayDivArrow" class="baby_overlay_arrow"></div>
|
||||
</div>
|
||||
<script type="text/javascript" src="apiCss/jquery-1.6.2.min.js"></script>
|
||||
<script type='text/javascript' src='apiCss/jquery.ztree.core.js'></script>
|
||||
<script type='text/javascript' src='apiCss/api.js'></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
apiContent._init();
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
102
static/zTree3/api/API_en.html
Normal file
@@ -0,0 +1,102 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>API Document [zTree -- jQuery tree plug-ins.]</title>
|
||||
<link rel="stylesheet" href="apiCss/common.css" type="text/css">
|
||||
<link rel='stylesheet' href='apiCss/zTreeStyleForApi.css' type='text/css'>
|
||||
<script type="text/javascript">
|
||||
var ie = (function(){
|
||||
var undef,
|
||||
v = 3,
|
||||
div = document.createElement('div'),
|
||||
all = div.getElementsByTagName('i');
|
||||
while (
|
||||
div.innerHTML = '<!--[if gt IE ' + (++v) + ']><i></i><![endif]-->',
|
||||
all[0]
|
||||
);
|
||||
return v > 4 ? v : undef;
|
||||
}()), ie6 = (ie === 6),
|
||||
path = window.location.pathname.replace(/.*\/([^\/\.]*)\..*/g,"$1"),
|
||||
langLib = [];
|
||||
ie = ie<9;
|
||||
if(ie) {
|
||||
document.write('<link rel="stylesheet" href="apiCss/common_ie6.css" type="text/css">');
|
||||
}
|
||||
var lang = "en",
|
||||
ajaxMsg = "If you use chrome browser, please copy the API files to local webserver. \n\n( because chrome browser can't allow AJAX access to 'file://' )";
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="header_wrap" class="header_wrap" style="padding-top: 30px;">
|
||||
<div id="header" class="header round">
|
||||
<div class="light-bulb" alt=""></div>
|
||||
<div class="ieSuggest">If you use the Chrome / FireFox / Opera / IE9 browser will be even more dazzling effect!</div>
|
||||
<div class="google_plus"><g:plusone></g:plusone></div>
|
||||
<div class="header-text">
|
||||
<h1><em>zTree v3.5.27 API Document</em></h1><p></p>
|
||||
<p>all.js = core + excheck + exedit ( without exhide ); if you found some mistakes please contact me.</p>
|
||||
</div>
|
||||
<ul class="shortcuts language" style="top:0;">
|
||||
<li><a href="API_cn.html" onclick="window.location.href='API_cn.html'"><button class="ico cn" title="Chinese" type="button"></button><span class=""></span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id="content_wrap" class="content_wrap">
|
||||
<div id="content" class="content">
|
||||
<div class="nav_section">
|
||||
<ul>
|
||||
<li class="first">Notes: </li>
|
||||
<li><button class="ico16 z_core" onfocus="this.blur();"></button><span>core package</span></li>
|
||||
<li><button class="ico16 z_check" onfocus="this.blur();"></button><span>excheck pack</span></li>
|
||||
<li><button class="ico16 z_edit" onfocus="this.blur();"></button><span>exedit pack</span></li>
|
||||
<li><button class="ico16 z_hide" onfocus="this.blur();"></button><span>exhide pack</span></li>
|
||||
<li class="noline">
|
||||
<button class="ico16 z_search" onfocus="this.blur();" title="'Enter', 'left' and 'right' key can locate the search results quickly."></button>
|
||||
<input type="text" class="searchKey search empty" value=""><input type="text" class="searchResult search" value="">
|
||||
<button class="ico16 searchPrev disabled" onfocus="this.blur();" title="'Enter', 'left' and 'right' key can locate the search results quickly."></button><button class="ico16 searchNext disabled" onfocus="this.blur();" title="'Enter', 'left' and 'right' key can locate the search results quickly."></button>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="contentBox" class="contentBox round clearfix">
|
||||
<div id="apiContent" class="apiContent">
|
||||
<div id="api_setting" class="api_setting left">
|
||||
<ul class="api_content_title"><li>setting details</li></ul>
|
||||
<ul id="settingTree" class="ztree"></ul>
|
||||
</div>
|
||||
<div id="api_function" class="api_function right">
|
||||
<ul class="api_content_title"><li>zTree method details</li></ul>
|
||||
<ul id="functionTree" class="ztree"></ul>
|
||||
<ul class="api_content_title"><li>treeNode data details</li></ul>
|
||||
<ul id="treenodeTree" class="ztree"></ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- overlayed -->
|
||||
<div id="overlayDiv" class="baby_overlay">
|
||||
<div id="overlayContent" class="content round clearfix">
|
||||
<div class="overlaySearch">
|
||||
<button class="ico16 z_search" onfocus="this.blur();" title="'Enter', 'left' and 'right' key can locate the search results quickly."></button>
|
||||
<input type="text" class="searchKey search empty" value=""><input type="text" class="searchResult search" value="">
|
||||
<button class="ico16 searchPrev disabled" onfocus="this.blur();" title="'Enter', 'left' and 'right' key can locate the search results quickly."></button><button class="ico16 searchNext disabled" onfocus="this.blur();" title="'Enter', 'left' and 'right' key can locate the search results quickly."></button>
|
||||
</div>
|
||||
<a id="overlayDivCloseBtn" class="close"></a>
|
||||
<div id="overlayDetailDiv" class="details"></div>
|
||||
</div>
|
||||
<div id="overlayDivArrow" class="baby_overlay_arrow"></div>
|
||||
</div>
|
||||
<script type="text/javascript" src="apiCss/jquery-1.6.2.min.js"></script>
|
||||
<script type='text/javascript' src='apiCss/jquery.ztree.core.js'></script>
|
||||
<script type='text/javascript' src='apiCss/api.js'></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
apiContent._init();
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
594
static/zTree3/api/apiCss/api.js
Normal file
@@ -0,0 +1,594 @@
|
||||
var apiContent = {
|
||||
zTree_Setting: null,
|
||||
zTree_Node: null,
|
||||
zTree_Function: null,
|
||||
overlayDiv : null,
|
||||
overlayContent : null,
|
||||
overlayDetailDiv : null,
|
||||
overlayCloseBtn: null,
|
||||
overlayArrow: null,
|
||||
contentBoxDiv : null,
|
||||
settingDiv : null,
|
||||
functionDiv : null,
|
||||
overlaySearch: null,
|
||||
searchKey: null,
|
||||
searchResultInput: null,
|
||||
searchPrevBtn: null,
|
||||
searchNextBtn: null,
|
||||
apiCache: {},
|
||||
lastValue: "",
|
||||
searchNodes: [],
|
||||
searchNodesCur: 0,
|
||||
|
||||
_init: function() {
|
||||
this.overlayDiv = $("#overlayDiv");
|
||||
this.overlayContent = $("#overlayContent");
|
||||
this.overlayDetailDiv = $("#overlayDetailDiv");
|
||||
this.overlayCloseBtn = $("#overlayDivCloseBtn");
|
||||
this.overlayArrow = $("#overlayDivArrow");
|
||||
this.contentBoxDiv = $("#contentBox");
|
||||
this.settingDiv = $("#api_setting");
|
||||
this.functionDiv = $("#api_function");
|
||||
this.searchKey = $(".searchKey");
|
||||
this.overlaySearch = $(".overlaySearch");
|
||||
this.searchResultInput = $(".searchResult");
|
||||
this.searchPrevBtn = $(".searchPrev");
|
||||
this.searchNextBtn = $(".searchNext");
|
||||
var setting = {
|
||||
view: {
|
||||
fontCss: this.getFontCss,
|
||||
showLine: false,
|
||||
showIcon: this.showIcon,
|
||||
showTitle: this.getTitle,
|
||||
selectedMulti: false,
|
||||
dblClickExpand: false
|
||||
},
|
||||
data: {
|
||||
key: {
|
||||
title: "tt"
|
||||
},
|
||||
simpleData: {
|
||||
enable:true,
|
||||
idKey: "id",
|
||||
pIdKey: "pId",
|
||||
rootPId: ""
|
||||
}
|
||||
},
|
||||
callback: {
|
||||
onNodeCreated: this.onNodeCreated,
|
||||
beforeClick: this.beforeClick
|
||||
}
|
||||
};
|
||||
var setting_nodes =[
|
||||
{id:1, pId:0, t:"setting", name:"var setting = {", open:true},
|
||||
{id:11, pId:1, t:"treeId", name:"treeId : \"\",", iconSkin:"core", showAPI:true},
|
||||
{id:12, pId:1, t:"treeObj", name:"treeObj : null,", iconSkin:"core", showAPI:true},
|
||||
{id:121, pId:1, name:""},
|
||||
|
||||
{id:20, pId:1, t:"async", name:"async : {", open:true},
|
||||
{id:201, pId:20, t:"autoParam", name:"autoParam : [],", iconSkin:"core", showAPI:true},
|
||||
{id:208, pId:20, t:"contentType", name:"contentType : \"application...\",", iconSkin:"core", showAPI:true},
|
||||
{id:202, pId:20, t:"dataFilter", name:"dataFilter : null,", iconSkin:"core", showAPI:true},
|
||||
{id:203, pId:20, t:"dataType", name:"dataType : \"text\",", iconSkin:"core", showAPI:true},
|
||||
{id:204, pId:20, t:"enable", name:"enable : false,", iconSkin:"core", showAPI:true},
|
||||
{id:205, pId:20, t:"otherParam", name:"otherParam : [],", iconSkin:"core", showAPI:true},
|
||||
{id:206, pId:20, t:"type", name:"type : \"post\",", iconSkin:"core", showAPI:true},
|
||||
{id:207, pId:20, t:"url", name:"url : \"\"", iconSkin:"core", showAPI:true},
|
||||
{id:21, pId:1, name:"},"},
|
||||
{id:22, pId:1, name:""},
|
||||
|
||||
{id:30, pId:1, t:"callback", name:"callback : {", open:true},
|
||||
{id:3001, pId:30, t:"beforeAsync", name:"beforeAsync : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3002, pId:30, t:"beforeCheck", name:"beforeCheck : null,", iconSkin:"check", showAPI:true},
|
||||
{id:3003, pId:30, t:"beforeClick", name:"beforeClick : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3004, pId:30, t:"beforeCollapse", name:"beforeCollapse : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3004, pId:30, t:"beforeDblClick", name:"beforeDblClick : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3005, pId:30, t:"beforeDrag", name:"beforeDrag : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:3006, pId:30, t:"beforeDragOpen", name:"beforeDragOpen : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:3007, pId:30, t:"beforeDrop", name:"beforeDrop : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:3029, pId:30, t:"beforeEditName", name:"beforeEditName : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:3008, pId:30, t:"beforeExpand", name:"beforeExpand : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3009, pId:30, t:"beforeMouseDown", name:"beforeMouseDown : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3010, pId:30, t:"beforeMouseUp", name:"beforeMouseUp : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3011, pId:30, t:"beforeRemove", name:"beforeRemove : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:3012, pId:30, t:"beforeRename", name:"beforeRename : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:3013, pId:30, t:"beforeRightClick", name:"beforeRightClick : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3014, pId:30, name:""},
|
||||
{id:3015, pId:30, t:"onAsyncError", name:"onAsyncError : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3016, pId:30, t:"onAsyncSuccess", name:"onAsyncSuccess : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3017, pId:30, t:"onCheck", name:"onCheck : null,", iconSkin:"check", showAPI:true},
|
||||
{id:3018, pId:30, t:"onClick", name:"onClick : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3019, pId:30, t:"onCollapse", name:"onCollapse : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3029, pId:30, t:"onDblClick", name:"onDblClick : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3020, pId:30, t:"onDrag", name:"onDrag : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:3030, pId:30, t:"onDragMove", name:"onDragMove : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:3021, pId:30, t:"onDrop", name:"onDrop : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:3022, pId:30, t:"onExpand", name:"onExpand : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3023, pId:30, t:"onMouseDown", name:"onMouseDown : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3024, pId:30, t:"onMouseUp", name:"onMouseUp : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3025, pId:30, t:"onNodeCreated", name:"onNodeCreated : null,", iconSkin:"core", showAPI:true},
|
||||
{id:3026, pId:30, t:"onRemove", name:"onRemove : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:3027, pId:30, t:"onRename", name:"onRename : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:3028, pId:30, t:"onRightClick", name:"onRightClick : null", iconSkin:"core", showAPI:true},
|
||||
{id:31, pId:1, name:"},"},
|
||||
{id:32, pId:1, name:""},
|
||||
|
||||
{id:40, pId:1, t:"check", name:"check : {", open:true},
|
||||
{id:405, pId:40, t:"autoCheckTrigger", name:"autoCheckTrigger : false,", iconSkin:"check", showAPI:true},
|
||||
{id:401, pId:40, t:"chkboxType", name:"chkboxType : {\"Y\": \"ps\", \"N\": \"ps\"},", iconSkin:"check", showAPI:true},
|
||||
{id:402, pId:40, t:"chkStyle", name:"chkStyle : \"checkbox\",", iconSkin:"check", showAPI:true},
|
||||
{id:403, pId:40, t:"enable", name:"enable : false,", iconSkin:"check", showAPI:true},
|
||||
{id:406, pId:40, t:"nocheckInherit", name:"nocheckInherit : false", iconSkin:"check", showAPI:true},
|
||||
{id:407, pId:40, t:"chkDisabledInherit", name:"chkDisabledInherit : false", iconSkin:"check", showAPI:true},
|
||||
{id:404, pId:40, t:"radioType", name:"radioType : \"level\"", iconSkin:"check", showAPI:true},
|
||||
{id:41, pId:1, name:"},"},
|
||||
{id:42, pId:1, name:""},
|
||||
|
||||
{id:50, pId:1, t:"data", name:"data : {", open:true},
|
||||
{id:500, pId:50, t:"keep", name:"keep : {", open:true},
|
||||
{id:5001, pId:500, t:"leaf", name:"leaf : false,", iconSkin:"core", showAPI:true},
|
||||
{id:5002, pId:500, t:"parent", name:"parent : false", iconSkin:"core", showAPI:true},
|
||||
{id:501, pId:50, name:"},"},
|
||||
|
||||
{id:510, pId:50, t:"key", name:"key : {", open:true},
|
||||
{id:5101, pId:510, t:"checked", name:"checked : \"checked\",", iconSkin:"check", showAPI:true},
|
||||
{id:5102, pId:510, t:"children", name:"children : \"children\",", iconSkin:"core", showAPI:true},
|
||||
{id:5103, pId:510, t:"name", name:"name : \"name\",", iconSkin:"core", showAPI:true},
|
||||
{id:5104, pId:510, t:"title", name:"title : \"\"", iconSkin:"core", showAPI:true},
|
||||
{id:5105, pId:510, t:"url", name:"url : \"url\"", iconSkin:"core", showAPI:true},
|
||||
{id:511, pId:50, name:"},"},
|
||||
|
||||
{id:520, pId:50, t:"simpleData", name:"simpleData : {", open:true},
|
||||
{id:5201, pId:520, t:"enable", name:"enable : false,", iconSkin:"core", showAPI:true},
|
||||
{id:5202, pId:520, t:"idKey", name:"idKey : \"id\",", iconSkin:"core", showAPI:true},
|
||||
{id:5203, pId:520, t:"pIdKey", name:"pIdKey : \"pId\",", iconSkin:"core", showAPI:true},
|
||||
{id:5204, pId:520, t:"rootPId", name:"rootPId : null", iconSkin:"core", showAPI:true},
|
||||
{id:521, pId:50, name:"}"},
|
||||
{id:51, pId:1, name:"},"},
|
||||
{id:52, pId:1, name:""},
|
||||
|
||||
{id:60, pId:1, t:"edit", name:"edit : {", open:true},
|
||||
{id:601, pId:60, t:"drag", name:"drag : {", open:true},
|
||||
{id:60111, pId:601, t:"autoExpandTrigger", name:"autoExpandTrigger : true,", iconSkin:"edit", showAPI:true},
|
||||
{id:60101, pId:601, t:"isCopy", name:"isCopy : true,", iconSkin:"edit", showAPI:true},
|
||||
{id:60102, pId:601, t:"isMove", name:"isMove : true,", iconSkin:"edit", showAPI:true},
|
||||
{id:60103, pId:601, t:"prev", name:"prev : true,", iconSkin:"edit", showAPI:true},
|
||||
{id:60104, pId:601, t:"next", name:"next : true,", iconSkin:"edit", showAPI:true},
|
||||
{id:60105, pId:601, t:"inner", name:"inner : true,", iconSkin:"edit", showAPI:true},
|
||||
{id:60107, pId:601, t:"borderMax", name:"borderMax : 10,", iconSkin:"edit", showAPI:true},
|
||||
{id:60108, pId:601, t:"borderMin", name:"borderMin : -5,", iconSkin:"edit", showAPI:true},
|
||||
{id:60106, pId:601, t:"minMoveSize", name:"minMoveSize : 5,", iconSkin:"edit", showAPI:true},
|
||||
{id:60109, pId:601, t:"maxShowNodeNum", name:"maxShowNodeNum : 5,", iconSkin:"edit", showAPI:true},
|
||||
{id:60110, pId:601, t:"autoOpenTime", name:"autoOpenTime : 500", iconSkin:"edit", showAPI:true},
|
||||
{id:602, pId:60, name:"},"},
|
||||
{id:608, pId:60, t:"editNameSelectAll", name:"editNameSelectAll : false,", iconSkin:"edit", showAPI:true},
|
||||
{id:603, pId:60, t:"enable", name:"enable : false,", iconSkin:"edit", showAPI:true},
|
||||
{id:604, pId:60, t:"removeTitle", name:"removeTitle : \"remove\",", iconSkin:"edit", showAPI:true},
|
||||
{id:605, pId:60, t:"renameTitle", name:"renameTitle : \"rename\",", iconSkin:"edit", showAPI:true},
|
||||
{id:606, pId:60, t:"showRemoveBtn", name:"showRemoveBtn : true,", iconSkin:"edit", showAPI:true},
|
||||
{id:607, pId:60, t:"showRenameBtn", name:"showRenameBtn : true", iconSkin:"edit", showAPI:true},
|
||||
{id:61, pId:1, name:"},"},
|
||||
{id:62, pId:1, name:""},
|
||||
|
||||
{id:70, pId:1, t:"view", name:"view : {", open:true},
|
||||
{id:7001, pId:70, t:"addDiyDom", name:"addDiyDom : null,", iconSkin:"core", showAPI:true},
|
||||
{id:7002, pId:70, t:"addHoverDom", name:"addHoverDom : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:7003, pId:70, t:"autoCancelSelected", name:"autoCancelSelected : true,", iconSkin:"core", showAPI:true},
|
||||
{id:7004, pId:70, t:"dblClickExpand", name:"dblClickExpand : true,", iconSkin:"core", showAPI:true},
|
||||
{id:7005, pId:70, t:"expandSpeed", name:"expandSpeed : \"fast\",", iconSkin:"core", showAPI:true},
|
||||
{id:7006, pId:70, t:"fontCss", name:"fontCss : {},", iconSkin:"core", showAPI:true},
|
||||
{id:7012, pId:70, t:"nameIsHTML", name:"nameIsHTML : false,", iconSkin:"core", showAPI:true},
|
||||
{id:7007, pId:70, t:"removeHoverDom", name:"removeHoverDom : null,", iconSkin:"edit", showAPI:true},
|
||||
{id:7008, pId:70, t:"selectedMulti", name:"selectedMulti : true,", iconSkin:"core", showAPI:true},
|
||||
{id:7009, pId:70, t:"showIcon", name:"showIcon : true,", iconSkin:"core", showAPI:true},
|
||||
{id:7010, pId:70, t:"showLine", name:"showLine : true,", iconSkin:"core", showAPI:true},
|
||||
{id:7011, pId:70, t:"showTitle", name:"showTitle : true,", iconSkin:"core", showAPI:true},
|
||||
{id:7012, pId:70, t:"txtSelectedEnable", name:"txtSelectedEnable : false", iconSkin:"core", showAPI:true},
|
||||
{id:71, pId:1, name:"}"},
|
||||
|
||||
{id:2, pId:0, name:"}"}
|
||||
];
|
||||
|
||||
var treenode_nodes =[
|
||||
{id:1, pId:0, t:"treeNode", name:"treeNode : {", open:true},
|
||||
{id:101, pId:1, t:"checked", name:"checked", iconSkin:"check", showAPI:true},
|
||||
{id:102, pId:1, t:"children", name:"children", iconSkin:"core", showAPI:true},
|
||||
{id:128, pId:1, t:"chkDisabled", name:"chkDisabled", iconSkin:"check", showAPI:true},
|
||||
{id:127, pId:1, t:"click", name:"click", iconSkin:"core", showAPI:true},
|
||||
{id:103, pId:1, t:"getCheckStatus", name:"getCheckStatus ()", iconSkin:"check", showAPI:true},
|
||||
{id:135, pId:1, t:"getIndex", name:"getIndex ()", iconSkin:"core", showAPI:true},
|
||||
{id:104, pId:1, t:"getNextNode", name:"getNextNode ()", iconSkin:"core", showAPI:true},
|
||||
{id:105, pId:1, t:"getParentNode", name:"getParentNode ()", iconSkin:"core", showAPI:true},
|
||||
{id:136, pId:1, t:"getPath", name:"getPath ()", iconSkin:"core", showAPI:true},
|
||||
{id:106, pId:1, t:"getPreNode", name:"getPreNode ()", iconSkin:"core", showAPI:true},
|
||||
{id:129, pId:1, t:"halfCheck", name:"halfCheck", iconSkin:"check", showAPI:true},
|
||||
{id:107, pId:1, t:"icon", name:"icon", iconSkin:"core", showAPI:true},
|
||||
{id:108, pId:1, t:"iconClose", name:"iconClose", iconSkin:"core", showAPI:true},
|
||||
{id:109, pId:1, t:"iconOpen", name:"iconOpen", iconSkin:"core", showAPI:true},
|
||||
{id:110, pId:1, t:"iconSkin", name:"iconSkin", iconSkin:"core", showAPI:true},
|
||||
{id:131, pId:1, t:"isHidden", name:"isHidden", iconSkin:"hide", showAPI:true},
|
||||
{id:111, pId:1, t:"isParent", name:"isParent", iconSkin:"core", showAPI:true},
|
||||
{id:132, pId:1, t:"name", name:"name", iconSkin:"core", showAPI:true},
|
||||
{id:112, pId:1, t:"nocheck", name:"nocheck", iconSkin:"check", showAPI:true},
|
||||
{id:113, pId:1, t:"open", name:"open", iconSkin:"core", showAPI:true},
|
||||
{id:133, pId:1, t:"target", name:"target", iconSkin:"core", showAPI:true},
|
||||
{id:134, pId:1, t:"url", name:"url", iconSkin:"core", showAPI:true},
|
||||
{id:114, pId:1, t:"diy", name:"*DIY*", iconSkin:"core", showAPI:true},
|
||||
{id:115, pId:1, name:""},
|
||||
{id:116, pId:1, t:"check_Child_State", name:"[check_Child_State]", iconSkin:"check", showAPI:true},
|
||||
{id:117, pId:1, t:"check_Focus", name:"[check_Focus]", iconSkin:"check", showAPI:true},
|
||||
{id:118, pId:1, t:"checkedOld", name:"[checkedOld]", iconSkin:"check", showAPI:true},
|
||||
{id:119, pId:1, t:"editNameFlag", name:"[editNameFlag]", iconSkin:"edit", showAPI:true},
|
||||
{id:120, pId:1, t:"isAjaxing", name:"[isAjaxing]", iconSkin:"core", showAPI:true},
|
||||
{id:121, pId:1, t:"isFirstNode", name:"[isFirstNode]", iconSkin:"core", showAPI:true},
|
||||
{id:122, pId:1, t:"isHover", name:"[isHover]", iconSkin:"edit", showAPI:true},
|
||||
{id:123, pId:1, t:"isLastNode", name:"[isLastNode]", iconSkin:"core", showAPI:true},
|
||||
{id:124, pId:1, t:"level", name:"[level]", iconSkin:"core", showAPI:true},
|
||||
{id:125, pId:1, t:"parentTId", name:"[parentTId]", iconSkin:"core", showAPI:true},
|
||||
{id:126, pId:1, t:"tId", name:"[tId]", iconSkin:"core", showAPI:true},
|
||||
{id:130, pId:1, t:"zAsync", name:"[zAsync]", iconSkin:"core", showAPI:true},
|
||||
{id:2, pId:0, name:"}"}
|
||||
];
|
||||
|
||||
var function_nodes =[
|
||||
{id:1, pId:0, t:"$.fn.zTree", name:"$.fn.zTree : {", open:true},
|
||||
{id:11, pId:1, t:"init", name:"init (obj, zSetting, zNodes)", iconSkin:"core", showAPI:true},
|
||||
{id:12, pId:1, t:"getZTreeObj", name:"getZTreeObj (treeId)", iconSkin:"core", showAPI:true},
|
||||
{id:14, pId:1, t:"destroy", name:"destroy (treeId)", iconSkin:"core", showAPI:true},
|
||||
{id:13, pId:1, t:"_z", name:"_z : {tools, view, event, data}", iconSkin:"core", showAPI:true},
|
||||
{id:2, pId:0, name:"}"},
|
||||
{id:3, pId:0, name:""},
|
||||
{id:4, pId:0, t:"zTreeObj", name:"zTreeObj : {", open:true},
|
||||
{id:401, pId:4, t:"setting", name:"setting", iconSkin:"core", showAPI:true},
|
||||
{id:402, pId:4, t:"addNodes", name:"addNodes (parentNode, index, newNodes, isSilent)", iconSkin:"core", showAPI:true},
|
||||
{id:403, pId:4, t:"cancelEditName", name:"cancelEditName (newName)", iconSkin:"edit", showAPI:true},
|
||||
{id:404, pId:4, t:"cancelSelectedNode", name:"cancelSelectedNode (node)", iconSkin:"core", showAPI:true},
|
||||
{id:405, pId:4, t:"checkAllNodes", name:"checkAllNodes (checked)", iconSkin:"check", showAPI:true},
|
||||
{id:406, pId:4, t:"checkNode", name:"checkNode (node, checked, checkTypeFlag, callbackFlag)", iconSkin:"check", showAPI:true},
|
||||
{id:407, pId:4, t:"copyNode", name:"copyNode (targetNode, node, moveType, isSilent)", iconSkin:"edit", showAPI:true},
|
||||
{id:436, pId:4, t:"destroy", name:"destroy ()", iconSkin:"core", showAPI:true},
|
||||
{id:408, pId:4, t:"editName", name:"editName (node)", iconSkin:"edit", showAPI:true},
|
||||
{id:409, pId:4, t:"expandAll", name:"expandAll (expandFlag)", iconSkin:"core", showAPI:true},
|
||||
{id:410, pId:4, t:"expandNode", name:"expandNode (node, expandFlag, sonSign, focus, callbackFlag)", iconSkin:"core", showAPI:true},
|
||||
{id:411, pId:4, t:"getChangeCheckedNodes", name:"getChangeCheckedNodes ()", iconSkin:"check", showAPI:true},
|
||||
{id:412, pId:4, t:"getCheckedNodes", name:"getCheckedNodes (checked)", iconSkin:"check", showAPI:true},
|
||||
{id:413, pId:4, t:"getNodeByParam", name:"getNodeByParam (key, value, parentNode)", iconSkin:"core", showAPI:true},
|
||||
{id:414, pId:4, t:"getNodeByTId", name:"getNodeByTId (tId)", iconSkin:"core", showAPI:true},
|
||||
{id:415, pId:4, t:"getNodeIndex", name:"getNodeIndex (node)", iconSkin:"core", showAPI:true},
|
||||
{id:416, pId:4, t:"getNodes", name:"getNodes ()", iconSkin:"core", showAPI:true},
|
||||
{id:431, pId:4, t:"getNodesByFilter", name:"getNodesByFilter (filter, isSingle, parentNode, invokeParam)", iconSkin:"core", showAPI:true},
|
||||
{id:417, pId:4, t:"getNodesByParam", name:"getNodesByParam (key, value, parentNode)", iconSkin:"core", showAPI:true},
|
||||
{id:418, pId:4, t:"getNodesByParamFuzzy", name:"getNodesByParamFuzzy (key, value, parentNode)", iconSkin:"core", showAPI:true},
|
||||
{id:419, pId:4, t:"getSelectedNodes", name:"getSelectedNodes ()", iconSkin:"core", showAPI:true},
|
||||
{id:432, pId:4, t:"hideNode", name:"hideNode (node)", iconSkin:"hide", showAPI:true},
|
||||
{id:433, pId:4, t:"hideNodes", name:"hideNodes (nodes)", iconSkin:"hide", showAPI:true},
|
||||
{id:420, pId:4, t:"moveNode", name:"moveNode (targetNode, node, moveType, isSilent)", iconSkin:"edit", showAPI:true},
|
||||
{id:421, pId:4, t:"reAsyncChildNodes", name:"reAsyncChildNodes (parentNode, reloadType, isSilent)", iconSkin:"core", showAPI:true},
|
||||
{id:422, pId:4, t:"refresh", name:"refresh ()", iconSkin:"core", showAPI:true},
|
||||
{id:423, pId:4, t:"removeChildNodes", name:"removeChildNodes (parentNode)", iconSkin:"core", showAPI:true},
|
||||
{id:424, pId:4, t:"removeNode", name:"removeNode (node, callbackFlag)", iconSkin:"core", showAPI:true},
|
||||
{id:425, pId:4, t:"selectNode", name:"selectNode (node, addFlag, isSilent)", iconSkin:"core", showAPI:true},
|
||||
{id:430, pId:4, t:"setChkDisabled", name:"setChkDisabled (node, disabled, inheritParent, inheritChildren)", iconSkin:"check", showAPI:true},
|
||||
{id:426, pId:4, t:"setEditable", name:"setEditable (editable)", iconSkin:"edit", showAPI:true},
|
||||
{id:434, pId:4, t:"showNode", name:"showNode (node)", iconSkin:"hide", showAPI:true},
|
||||
{id:435, pId:4, t:"showNodes", name:"showNodes (nodes)", iconSkin:"hide", showAPI:true},
|
||||
{id:427, pId:4, t:"transformToArray", name:"transformToArray (nodes)", iconSkin:"core", showAPI:true},
|
||||
{id:428, pId:4, t:"transformTozTreeNodes", name:"transformTozTreeNodes (simpleNodes)", iconSkin:"core", showAPI:true},
|
||||
{id:429, pId:4, t:"updateNode", name:"updateNode (node, checkTypeFlag)", iconSkin:"core", showAPI:true},
|
||||
{id:5, pId:0, name:"}"}
|
||||
];
|
||||
|
||||
apiContent.zTree_Setting = $.fn.zTree.init($("#settingTree"), $.fn.zTree._z.tools.clone(setting), setting_nodes);
|
||||
apiContent.zTree_Node = $.fn.zTree.init($("#treenodeTree"), $.fn.zTree._z.tools.clone(setting), treenode_nodes);
|
||||
apiContent.zTree_Function = $.fn.zTree.init($("#functionTree"), $.fn.zTree._z.tools.clone(setting), function_nodes);
|
||||
this.bindEvent();
|
||||
|
||||
},
|
||||
bindEvent: function() {
|
||||
$(document).bind("keydown", this.listenKeyDown)
|
||||
this.overlayCloseBtn.bind("click", apiContent.overlayClose);
|
||||
this.searchResultInput.bind("click", function(e) {
|
||||
$(this).prev().get(0).focus();
|
||||
this.blur();
|
||||
}).bind("focus", function(e) {
|
||||
this.blur();
|
||||
});
|
||||
this.searchKey.bind("focus", this.focusKey)
|
||||
.bind("blur", this.blurKey)
|
||||
.bind("propertychange", this.searchNode)
|
||||
.bind("input", this.searchNode);
|
||||
this.searchPrevBtn.bind("click", this.searchPrev);
|
||||
this.searchNextBtn.bind("click", this.searchNext);
|
||||
},
|
||||
setSameKey: function(value) {
|
||||
apiContent.searchKey.attr("value", value);
|
||||
},
|
||||
focusKey: function(e) {
|
||||
if (apiContent.searchKey.hasClass("empty")) {
|
||||
apiContent.searchKey.removeClass("empty");
|
||||
}
|
||||
},
|
||||
blurKey: function(e) {
|
||||
apiContent.setSameKey(e.target.value);
|
||||
if (e.target.value === "") {
|
||||
apiContent.searchKey.addClass("empty");
|
||||
}
|
||||
},
|
||||
listenKeyDown: function(e) {
|
||||
if (e.keyCode=="13" && apiContent.overlayDiv.is(":hidden")) {
|
||||
apiContent.openAPI();
|
||||
} else if (e.keyCode=="37") {
|
||||
apiContent.searchPrev();
|
||||
} else if (e.keyCode=="13" || e.keyCode=="39") {
|
||||
apiContent.searchNext();
|
||||
}
|
||||
},
|
||||
openAPI: function() {
|
||||
if (apiContent.searchNodes.length > 0) {
|
||||
var setting_zTree = $.fn.zTree.getZTreeObj("settingTree"),
|
||||
treenode_zTree = $.fn.zTree.getZTreeObj("treenodeTree"),
|
||||
function_zTree = $.fn.zTree.getZTreeObj("functionTree");
|
||||
if (apiContent.searchNodesCur < 0 || apiContent.searchNodesCur > apiContent.searchNodes.length -1) {
|
||||
apiContent.searchNodesCur = 0;
|
||||
}
|
||||
var node = apiContent.searchNodes[apiContent.searchNodesCur];
|
||||
|
||||
if (node.tId.indexOf("setting") > -1) {
|
||||
setting_zTree.selectNode(node);
|
||||
} else if (node.tId.indexOf("treenode") > -1) {
|
||||
treenode_zTree.selectNode(node);
|
||||
} else {
|
||||
function_zTree.selectNode(node);
|
||||
}
|
||||
apiContent.beforeClick(node.tId.substring(0, node.tId.indexOf("_")), node, true);
|
||||
apiContent.searchCur();
|
||||
}
|
||||
},
|
||||
searchNode: function(e) {
|
||||
var setting_zTree = $.fn.zTree.getZTreeObj("settingTree"),
|
||||
treenode_zTree = $.fn.zTree.getZTreeObj("treenodeTree"),
|
||||
function_zTree = $.fn.zTree.getZTreeObj("functionTree");
|
||||
if (apiContent.curKey == e.target.value) return;
|
||||
apiContent.curKey = e.target.value;
|
||||
var value = $.trim(apiContent.curKey);
|
||||
apiContent.setSameKey(apiContent.curKey);
|
||||
if (apiContent.searchKey.hasClass("empty")) {
|
||||
value = "";
|
||||
apiContent.searchResultInput.removeClass("noResult").attr("value","");
|
||||
}
|
||||
if (apiContent.lastValue === value) return;
|
||||
|
||||
apiContent.updateNodes(false);
|
||||
apiContent.lastValue = value;
|
||||
if (value === "" || value.length < 2) {
|
||||
apiContent.searchNodes = [];
|
||||
apiContent.searchNodesCur = -1;
|
||||
apiContent.searchCur(true);
|
||||
return;
|
||||
}
|
||||
|
||||
var settingNodeList = setting_zTree.getNodesByFilter(apiContent.searchFilter);
|
||||
var functionNodeList = function_zTree.getNodesByFilter(apiContent.searchFilter);
|
||||
var treenodeNodeList = treenode_zTree.getNodesByFilter(apiContent.searchFilter);
|
||||
apiContent.searchNodes = settingNodeList.concat(functionNodeList).concat(treenodeNodeList);
|
||||
apiContent.searchNodesCur = -1;
|
||||
apiContent.searchCur();
|
||||
apiContent.updateNodes(true);
|
||||
},
|
||||
searchFilter: function(node) {
|
||||
var value = $.trim(apiContent.searchKey.get(0).value).toLowerCase();
|
||||
return (node.showAPI && node.name.toLowerCase().indexOf(value) > -1);
|
||||
},
|
||||
searchPrev: function(e) {
|
||||
if (apiContent.searchPrevBtn.hasClass("disabled")) return;
|
||||
apiContent.searchNodesCur--;
|
||||
if (apiContent.searchNodesCur < 0 || apiContent.searchNodesCur > apiContent.searchNodes.length -1) {
|
||||
apiContent.searchNodesCur = apiContent.searchNodes.length -1;
|
||||
}
|
||||
apiContent.openAPI();
|
||||
},
|
||||
searchNext: function(e) {
|
||||
if (apiContent.searchNextBtn.hasClass("disabled")) return;
|
||||
apiContent.searchNodesCur++;
|
||||
apiContent.openAPI();
|
||||
},
|
||||
searchCur: function(init) {
|
||||
var result = apiContent.searchNodes;
|
||||
if (init) {
|
||||
apiContent.searchResultInput.removeClass("noResult").attr("value","");
|
||||
} else if (result.length == 0) {
|
||||
apiContent.searchResultInput.addClass("noResult").attr("value"," [ 0 / 0 ] ");
|
||||
} else {
|
||||
apiContent.searchResultInput.removeClass("noResult").attr("value"," [ " + (apiContent.searchNodesCur > -1 ? apiContent.searchNodesCur+1 : "?")+ " / " + result.length + " ] ");
|
||||
}
|
||||
if (result.length > 0) {
|
||||
apiContent.searchPrevBtn.removeClass("disabled");
|
||||
apiContent.searchNextBtn.removeClass("disabled");
|
||||
} else {
|
||||
apiContent.searchPrevBtn.addClass("disabled");
|
||||
apiContent.searchNextBtn.addClass("disabled");
|
||||
}
|
||||
},
|
||||
updateNodes: function(highlight) {
|
||||
var setting_zTree = $.fn.zTree.getZTreeObj("settingTree"),
|
||||
treenode_zTree = $.fn.zTree.getZTreeObj("treenodeTree"),
|
||||
function_zTree = $.fn.zTree.getZTreeObj("functionTree"),
|
||||
node = null;
|
||||
for( var i=0, l=apiContent.searchNodes.length; i<l; i++) {
|
||||
node = apiContent.searchNodes[i];
|
||||
if (node.level > 0) {
|
||||
node.highlight = highlight;
|
||||
if (node.tId.indexOf("setting") > -1) {
|
||||
setting_zTree.updateNode(node);
|
||||
} else if (node.tId.indexOf("treenode") > -1) {
|
||||
treenode_zTree.updateNode(node);
|
||||
} else {
|
||||
function_zTree.updateNode(node);
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
getFontCss: function(treeId, treeNode) {
|
||||
return (!!treeNode.highlight) ? {color:"#A60000", "font-weight":"bold"} : {color:"#333", "font-weight":"normal"};
|
||||
},
|
||||
getTitle: function(treeId, node) {
|
||||
var t = [], n = node;
|
||||
while (n && !!n.t) {
|
||||
t.push(n.t);
|
||||
n = n.getParentNode();
|
||||
}
|
||||
t = t.reverse();
|
||||
node.tt = t.join('.');
|
||||
return true;
|
||||
},
|
||||
showIcon: function(treeId, node) {
|
||||
return (!!node.iconSkin);
|
||||
},
|
||||
onNodeCreated: function (e, treeId, node) {
|
||||
var a = $("#" + node.tId + "_a");
|
||||
if (node.showAPI) {
|
||||
a.attr("rel", "#overlayDiv");
|
||||
} else {
|
||||
a.css({cursor: "default"});
|
||||
}
|
||||
},
|
||||
beforeClick: function (treeId, node, noClear) {
|
||||
if (!node.showAPI) return false;
|
||||
var o = $("#" + node.tId + "_a");
|
||||
if (!!apiContent.apiCache[node.tId]) {
|
||||
apiContent.tmpDiv.html(apiContent.apiCache[node.tId]);
|
||||
apiContent.overlayShow(o, (apiContent.lastNode === node));
|
||||
} else {
|
||||
apiContent.overlayAjax(treeId, node);
|
||||
}
|
||||
apiContent.lastNode = node;
|
||||
if (node.tId.indexOf("settingTree")>-1) {
|
||||
apiContent.settingDiv.removeClass("right").addClass("left");
|
||||
apiContent.functionDiv.removeClass("left").addClass("right");
|
||||
} else {
|
||||
apiContent.settingDiv.removeClass("left").addClass("right");
|
||||
apiContent.functionDiv.removeClass("right").addClass("left");
|
||||
}
|
||||
|
||||
if (!noClear) {
|
||||
apiContent.clearSelectedNode();
|
||||
}
|
||||
return true;
|
||||
},
|
||||
clearSelectedNode: function() {
|
||||
apiContent.zTree_Setting.cancelSelectedNode();
|
||||
apiContent.zTree_Node.cancelSelectedNode();
|
||||
apiContent.zTree_Function.cancelSelectedNode();
|
||||
},
|
||||
overlayAutoClose: function(e) {
|
||||
var eId = e.target.id, eRel = e.target.getAttribute("rel"), eClass = e.target.className;
|
||||
if (eId === "overlayDiv" || eId === "overlayDivArrow" || eClass.indexOf("searchPrev") > -1 || eClass.indexOf("searchNext") > -1 || !!eRel) return;
|
||||
if (!$(e.target).parents("[rel]").length && !$(e.target).parents("#overlayDiv").length) {
|
||||
apiContent.overlayClose();
|
||||
}
|
||||
},
|
||||
overlayClose: function() {
|
||||
var o = apiContent.overlayDiv;
|
||||
o.stop();
|
||||
apiContent.clearSelectedNode();
|
||||
if (ie) {
|
||||
o.hide();
|
||||
} else {
|
||||
setTimeout(function() {o.fadeTo("fast", 0, function(){o.hide();})}, 200);
|
||||
}
|
||||
$(document).unbind("click", apiContent.overlayAutoClose);
|
||||
},
|
||||
overlayShow: function(target, isSameNode) {
|
||||
var w = $(window), o = apiContent.overlayDiv, a = apiContent.overlayArrow,
|
||||
oc = apiContent.overlayContent, c = apiContent.contentBoxDiv,
|
||||
t = target.offset().top - 30,
|
||||
cMaxLeft = c.offset().left + c.outerWidth({margin:true}) - o.outerWidth({margin:true}) - 10,
|
||||
l = Math.min(cMaxLeft, target.offset().left + target.width() + 40),
|
||||
arrowT = target.offset().top + 16,
|
||||
wMinTop = 100, footerHeight = 50, onlyFade = false,
|
||||
wHeight = w.height(), wScrollTop=w.scrollTop(), wMaxTop = wHeight + wScrollTop - footerHeight;
|
||||
if (!apiContent.overlayMaxTop) {
|
||||
apiContent.overlayMaxTop = apiContent.contentBoxDiv.offset().top + apiContent.contentBoxDiv.height();
|
||||
}
|
||||
o.stop();
|
||||
if (o.css("display") !== "block") {
|
||||
o.css({top: t, left: l});
|
||||
a.css({top:arrowT - t});
|
||||
$(document).bind("click", apiContent.overlayAutoClose);
|
||||
}
|
||||
if (ie) {
|
||||
onlyFade = true;
|
||||
o.show();
|
||||
} else {
|
||||
o.fadeTo("fast", 1);
|
||||
}
|
||||
|
||||
var h = apiContent.tmpDiv.outerHeight({margin:true}) + apiContent.overlaySearch.outerHeight();
|
||||
if ((t + h) > wMaxTop) {
|
||||
t = wMaxTop - h;
|
||||
}
|
||||
if ((t + h) > apiContent.overlayMaxTop) {
|
||||
t = apiContent.overlayMaxTop - h;
|
||||
}
|
||||
t = Math.max(t, wScrollTop, wMinTop);
|
||||
if ((t + h) > ($("body").height()-footerHeight-20)) {
|
||||
o.css("padding-bottom", footerHeight + "px");
|
||||
} else {
|
||||
o.css("padding-bottom", "0");
|
||||
}
|
||||
apiContent.overlayDetailDiv.empty();
|
||||
apiContent.overlayDetailDiv.append(apiContent.tmpDiv.children());
|
||||
if (!onlyFade) {
|
||||
onlyFade = (isSameNode && t === parseInt(o.css("top").replace("px", "")));
|
||||
}
|
||||
|
||||
a.removeClass("reverse");
|
||||
if ( (arrowT - t) > (h-55) ) {
|
||||
a.addClass("reverse");
|
||||
arrowT -= 55;
|
||||
}
|
||||
|
||||
if (onlyFade) {
|
||||
o.css({top: t, left: l});
|
||||
oc.css({height: h});
|
||||
a.css({top:arrowT - t});
|
||||
} else {
|
||||
o.animate({top: t, left: l}, {duration: "normal",easing: "swing", complete:null});
|
||||
oc.animate({height: h}, {duration: "fast",easing: "swing", complete:null});
|
||||
a.animate({top:arrowT - t}, {duration: "normal",easing: "linear", complete:null});
|
||||
}
|
||||
},
|
||||
overlayAjax: function(treeId, node) {
|
||||
var o = $("#" + node.tId + "_a");
|
||||
if (node.isAjax) return;
|
||||
node.isAjax = true;
|
||||
$.ajax({
|
||||
type: "get",
|
||||
url: "" + lang + "/" + node.tt.replace("$.", "") + ".html",
|
||||
data: null,
|
||||
dataType: "text",
|
||||
success: function(msg) {
|
||||
if (!apiContent.tmpDiv) {
|
||||
var tmpDiv = $(document.createElement("div"));
|
||||
tmpDiv.addClass("baby_overlay_tmp");
|
||||
$("body").append(tmpDiv)
|
||||
apiContent.tmpDiv = $(document.createElement("div"));
|
||||
apiContent.tmpDiv.addClass("details");
|
||||
tmpDiv.append(apiContent.tmpDiv);
|
||||
|
||||
} else {
|
||||
apiContent.tmpDiv.empty();
|
||||
}
|
||||
apiContent.tmpDiv.html(msg);
|
||||
apiContent.overlayShow(o, false);
|
||||
apiContent.apiCache[node.tId] = msg;
|
||||
node.isAjax = false;
|
||||
},
|
||||
error: function(XMLHttpRequest, textStatus, errorThrown) {
|
||||
alert(ajaxMsg)
|
||||
if (apiContent.tmpDiv) apiContent.tmpDiv.empty();
|
||||
node.isAjax = false;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
219
static/zTree3/api/apiCss/common.css
Normal file
@@ -0,0 +1,219 @@
|
||||
/* Resets */
|
||||
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
|
||||
margin: 0;padding: 0;border: 0;outline: 0;font-weight: inherit;font-style: inherit;font-size: 100%;font-family: inherit;vertical-align: baseline;}
|
||||
:focus {outline: 0;}
|
||||
body {color: #2f332a;font: 15px/21px Arial, Helvetica, simsun, sans-serif;background: #528036 url(img/background.jpg) no-repeat fixed 0 0;}
|
||||
p {padding-bottom: 20px;}
|
||||
ol, ul {list-style: none;}
|
||||
table {border-collapse: separate;border-spacing: 0;}
|
||||
caption, th, td {text-align: left;font-weight: normal;}
|
||||
strong {font-weight: bold;}
|
||||
em {font-style: italic;}
|
||||
hr {display: none;}
|
||||
.font1 {color: white;background-color: #528036;}
|
||||
.right {float: right;}
|
||||
.left {float: left;}
|
||||
.hide {display: none;}
|
||||
.round {-moz-border-radius: 15px;-webkit-border-radius: 15px;-khtml-border-radius: 15px;border-radius: 15px;}
|
||||
.clear {clear: both;}
|
||||
.clearfix {display: block;}
|
||||
.clearfix:after {content: ".";display: block;clear: both;visibility: hidden;line-height: 0;height: 0;}
|
||||
html[xmlns] .clearfix {display: block;}
|
||||
* html .clearfix {height: 1%;}
|
||||
|
||||
/* Link Styles */
|
||||
a {color: #528036;}
|
||||
a:link, a:visited {text-decoration: none;}
|
||||
a:hover {color: #000;text-decoration: none;}
|
||||
a:active {text-decoration: none;}
|
||||
|
||||
/* Headings */
|
||||
h1, h2, h3, h4, h5, h6 {color: #2f332a;font-weight: bold;font-family: Helvetica, Arial, simsun, sans-serif;padding-bottom: 5px;}
|
||||
h1 {font-size: 36px;line-height: 44px;}
|
||||
h2 {font-size: 20px;line-height: 20px;}
|
||||
h3 {font-size: 14px;line-height: 14px;}
|
||||
h4 {font-size: 14px;font-weight: normal;line-height: 25px;}
|
||||
|
||||
/* Wraps */
|
||||
.header_wrap {position: relative;min-width: 940px;padding: 100px 30px 0 30px;}
|
||||
.content_wrap {position: relative;min-width: 940px;padding: 0 30px 50px 30px;}
|
||||
.footer_wrap {bottom: 0;height: 47px;width: 100%;background-color: #1b1b1b;border-top: 1px solid #749e58;}
|
||||
|
||||
/* Header */
|
||||
.header {position: relative;width: 940px;margin: 0 auto;height: 160px;border: 1px solid white;background: transparent url(img/header-bg.png) repeat-x 0 -50px;}
|
||||
.header-text {padding: 40px 25px 15px 120px;font-size: 18px;line-height: 24px;color: #747d67;font-family: Helvetica, sans-serif;}
|
||||
.header-text img {padding-bottom: 5px;}
|
||||
.shortcuts {white-space: nowrap;text-align: right;position: absolute;top: -45px;right: 5px;}
|
||||
.shortcuts.language {top: -85px;right:0px;}
|
||||
.shortcuts li {display: inline;font-size: 18px;line-height: 28px;font-family: Helvetica, Arial, simsun, sans-serif;padding-bottom: 5px;margin-left: 30px;cursor: pointer;}
|
||||
.shortcuts li button {cursor: pointer;}
|
||||
.shortcuts li span {border-bottom: 1px dotted white;}
|
||||
.shortcuts li span.selected {padding: 2px;background-color: #528036;}
|
||||
.shortcuts li a {color: #fff;}
|
||||
.ieSuggest {display:none;font-size: 12px;color: silver;position: absolute;left: 10px;top: 2px;}
|
||||
.google_plus {position: absolute;right: 10px; top:10px;}
|
||||
.light-bulb {position: absolute;left: -20px;bottom: -35px;width:116px;height:180px;background-image:url(img/lightbulb.png);background-repeat: no-repeat;}
|
||||
|
||||
/* Content */
|
||||
.content {position: relative;width: 940px;margin: 0 auto;}
|
||||
.nav_section {position: relative;height: 20px;font-family: "Myriad Pro", "Trebuchet MS", sans-serif;font-size: 15px;color: #253;padding: 20px 0;}
|
||||
.nav_section ul {position: absolute;right: 10px;}
|
||||
.nav_section ul li {display: inline;line-height: 20px;margin: 0 5px 0 20px;border-bottom: 1px dotted white;}
|
||||
.nav_section ul li.noline {border-bottom: 0;}
|
||||
.nav_section ul li a {color: #fff;}
|
||||
.nav_section ul li a.selected {padding: 2px;background-color: #528036;}
|
||||
.nav_section ul li.first {border: none;}
|
||||
.content .title {margin: 50px 30px 20px 70px;}
|
||||
.content li {margin-bottom: 5px;}
|
||||
.contentBox {position: relative;overflow: hidden;border: 1px solid white;min-height: 200px;line-height: 25px;background: transparent url(img/contact-bg.png) repeat-x 0 0;}
|
||||
|
||||
.zTreeInfo {display:none;width: 940px;position: absolute;}
|
||||
.zTreeInfo p {padding-bottom: 50px;}
|
||||
.zTreeInfo-left {float: left;width: 280px;height:300px;padding: 0 50px 60px 75px;background:url(img/zTreeIntroduction.jpg) no-repeat 30px 30px;}
|
||||
.zTreeInfo-right {position: relative;float: right;width: 475px;padding: 0 50px 60px 0;}
|
||||
.zTreeInfo-right li {font-size: 12px;list-style-type: disc;}
|
||||
|
||||
.license {display:none;width: 940px;position: absolute;}
|
||||
|
||||
.donateInfo {display:block;width: 940px;position: absolute;}
|
||||
|
||||
.links {display:none;width: 940px;position: absolute;}
|
||||
.links .content {float: left;width: 160px;height:200px;padding: 0 10px 10px 2px;text-align: center;}
|
||||
.links .content.first {margin-left: 30px;}
|
||||
|
||||
.contact {display:none;width: 940px;position: absolute;}
|
||||
.contact .myhome { position: absolute; top:10px; left:620px; width:300px; height:266px; background: transparent url(img/myhome.gif) scroll no-repeat 0 0;}
|
||||
|
||||
.siteTag {position: absolute;left: -16px;top: 109px;z-index: 10;width: 65px;height: 46px;padding:0;margin:0 10px 0 0;
|
||||
vertical-align:middle;border:0 none;background: transparent url(img/siteTag.png) scroll no-repeat 0 0;}
|
||||
.siteTag.tag_zTreeInfo {background-position: 0 0}
|
||||
.siteTag.tag_license {background-position: 0 -46px}
|
||||
.siteTag.tag_donate {background-position: 0 -92px}
|
||||
.siteTag.tag_contact {background-position: 0 -138px}
|
||||
|
||||
.apiContent {width: 940px;}
|
||||
.apiContent .right {float: right;padding-right: 100px;}
|
||||
.apiContent .left {float: left;padding-right: 20px;border-right: 1px dotted silver;}
|
||||
.api_setting {position: relative;margin:20px 0 20px 20px;}
|
||||
.api_function {position: relative;margin:20px 0 20px 30px;padding-right: 10px;}
|
||||
.api_content_title {text-align: center;font-weight: bold;}
|
||||
|
||||
.demoContent {width: 940px;}
|
||||
.demoContent .right {float: right;padding: 20px;width: 600px;}
|
||||
.demoContent .left {float: left;padding: 20px;}
|
||||
.demoContent iframe {width:600px;min-height: 530px;}
|
||||
|
||||
.faqContent {width: 940px;}
|
||||
.faqContent .right {float: right;padding: 20px;width: 600px;}
|
||||
.faqContent .left {float: left;padding: 20px;}
|
||||
.faqContent iframe {width:600px;min-height: 300px;}
|
||||
|
||||
.baby_overlay_tmp {position: absolute;top:0; left:-5000px;display:block;visibility: hidden;width:640px;font-size:11px;}
|
||||
.baby_overlay_tmp .details {padding: 20px;}
|
||||
.baby_overlay {display:none;position:absolute;z-index:99;left:0; top:0;width:640px;color:#fff;font-size:11px;}
|
||||
.baby_overlay .content {width:100%; height:100px;overflow: hidden;background: transparent url(img/overlay_bg.png) scroll repeat 0 0;}
|
||||
.baby_overlay .details {padding:0 20px 20px 20px;}
|
||||
.baby_overlay .close {background-image:url(img/close.png);position:absolute; right:5px; top:5px;cursor:pointer;height:36px;width:36px;}
|
||||
.baby_overlay_arrow {background-image:url(img/overlay_arrow.png);background-position:0 0;position:absolute;height:40px;width:40px;left: -40px;}
|
||||
.baby_overlay_arrow.reverse {background-position:0 -40px;}
|
||||
|
||||
/* Footer */
|
||||
.footer {position: relative;min-width: 1000px;font: 14px/24px arial, helvetica, sans-serif;}
|
||||
.footer ul {position:absolute;left: 0px;border:1px solid #393939;background:#262626;padding:12px 0px;line-height: 18px;display: none;list-style: none;}
|
||||
.footer ul li a {display:block;padding: 2px 15px;color: #9c9c9c;text-indent: 0;}
|
||||
.footer ul li a:hover {text-decoration:none;color: #fff;}
|
||||
.footer-logo {position:absolute;margin: 10px 0 0 30px;width:122px; height:24px;top:0; left:0;background: transparent url(img/footer-logo.png) no-repeat 0 0;}
|
||||
.footer_mii {position: absolute;right: 558px;top: 8px;z-index: 10;padding: 4px 0;}
|
||||
.footer_mii a {font-size:10px;color:#649140}
|
||||
.footer_mii a:hover {color:#B6D76F}
|
||||
.footer_siteMap {position: absolute;right: 358px;top: 8px;width: 155px;z-index: 10;padding: 4px 0;}
|
||||
.footer_siteMap .footer_siteMap_header {width:155px;text-indent: -9999px;background: transparent url(img/footer_siteMap.gif) no-repeat 0 0;}
|
||||
.footer_siteMap ul {top:-202px;width:180px;}
|
||||
.footer_siteMap:hover ul {left: 0}
|
||||
.footer_contact {position: absolute;right: 193px;top: 8px;width: 155px;z-index: 10;padding: 4px 0;}
|
||||
.footer_contact .footer_contact_header {width:155px;text-indent: -9999px;background: transparent url(img/footer_contact.gif) no-repeat 0px 0px;}
|
||||
.footer_contact ul {top:-113px;width:153px;}
|
||||
.footer_contact:hover ul {left: 0}
|
||||
.footer_download {position: absolute;right: 60px;top: 8px;width: 123px;z-index: 10;padding: 4px 0;}
|
||||
.footer_download .footer_download_header {width:123px;text-indent: -9999px;background: transparent url(img/footer_download.png) no-repeat 0px 0px;}
|
||||
.footer_download ul {top:-113px;width:140px;}
|
||||
.footer_download:hover ul {left: 0}
|
||||
|
||||
/* button icon */
|
||||
button {vertical-align:middle;border:0 none;background: transparent no-repeat 0 0 scroll;}
|
||||
|
||||
.shortcuts button.ico {width:24px; height:24px;padding:0; margin:0 10px 0 0;background-image:url(img/menuIcon.png)}
|
||||
.shortcuts button.home {background-position: 0 0}
|
||||
.shortcuts button.demo {background-position: 0 -24px}
|
||||
.shortcuts button.api {background-position: 0 -48px}
|
||||
.shortcuts button.faq {background-position: 0 -72px}
|
||||
.shortcuts button.donate {background-position: 0 -144px}
|
||||
.shortcuts button.download {background-position: 0 -96px}
|
||||
.shortcuts button.face {background-position: 0 -120px}
|
||||
.shortcuts button.cn {width:48px; height:24px;padding:0; margin:0 10px 0 0;background-image:url(img/chinese.png)}
|
||||
.shortcuts button.en {width:48px; height:24px;padding:0; margin:0 10px 0 0;background-image:url(img/english.png)}
|
||||
|
||||
.content button.ico {width:24px; height:24px;padding:0; margin:0 10px 0 0;}
|
||||
|
||||
.content button.ico16 {width:16px; height:16px;padding:0; margin:0 5px 0 0;background-image:url("img/apiMenu.png");}
|
||||
button.z_core {margin-top: -4px;background-position:0 0;}
|
||||
button.z_check {margin-top: -4px;background-position:0 -16px;}
|
||||
button.z_edit {margin-top: -4px;background-position:0 -32px;}
|
||||
button.z_hide {margin-top: -4px;background-position:0 -64px;}
|
||||
button.z_search {margin-top: -4px;background-position:0 -48px;}
|
||||
button.searchPrev {margin-top: -4px;background-position:-16px 0;cursor:pointer}
|
||||
button.searchNext {margin-top: -4px;background-position:-16px -16px;cursor:pointer}
|
||||
button.searchPrev.disabled {margin-top: -4px;background-position:-16px -32px;cursor:auto}
|
||||
button.searchNext.disabled {margin-top: -4px;background-position:-16px -48px;cursor:auto}
|
||||
input.search {margin:0;padding:2px 0; border:0;}
|
||||
input.searchKey {width:150px;}
|
||||
input.searchResult {margin-left:-3px;width:65px;text-align:right;background-color:white;color:#707070}
|
||||
input.searchResult.noResult {background-color:#ff6666;color:black}
|
||||
.baby_overlay div.overlaySearch {text-align:right;padding-right:50px;padding-top:12px;}
|
||||
|
||||
/* api overlay*/
|
||||
.apiDetail .topLine {border-top: 1px dashed #376B29;margin-top: 5px;padding-top: 5px;}
|
||||
.apiDetail .highlight_red {color:#A60000;}
|
||||
.apiDetail .highlight_green {color:#A7F43D;}
|
||||
.apiDetail h1, .apiDetail h2, .apiDetail h3, .apiDetail h4, .apiDetail h5, .apiDetail h6 {color: white;padding: 0;}
|
||||
.apiDetail h2 {color: #A7F43D;margin: 5px auto;padding: 5px;font-size: 20px;}
|
||||
.apiDetail h2 span {font-size: 14px;float: right;font-weight: normal;margin: 2px 20px 0 0;vertical-align: bottom;}
|
||||
.apiDetail h2 span.path {float: left;margin: 2px 0 0 0;vertical-align: bottom;}
|
||||
.apiDetail h3 {margin: 5px auto;padding: 5px;font-size: 14px;font-weight: normal;}
|
||||
.apiDetail h3 span.h3_info {margin-left: 20px;font-size: 12px;}
|
||||
.apiDetail h4 {margin: 0 auto;padding: 0 5px;font-size: 12px;font-weight: normal;line-height: 16px;}
|
||||
.apiDetail .desc h4 {color: black;}
|
||||
.apiDetail h4 b{width: 150px;display:inline-block;}
|
||||
.apiDetail h4 span{width: 230px;display:inline-block;}
|
||||
|
||||
.apiDetail pre, .apiDetail .desc {background: #E8FCD6;color: black;margin: 10px;padding: 10px;display: block;}
|
||||
.apiDetail pre {word-wrap: break-word;}
|
||||
.apiDetail p{margin-left: 5px;padding: 0;}
|
||||
.apiDetail .longdesc {margin-top: 5px;}
|
||||
.apiDetail .longdesc p{font-size: 12px;line-height:1.5;margin:3px 0;}
|
||||
.apiDetail .longdesc b{font-size: 14px;}
|
||||
.apiDetail table {border-collapse:collapse;}
|
||||
.apiDetail table td {border:1px solid silver;text-align: center;vertical-align: middle;}
|
||||
.apiDetail table thead td {font-weight: bold}
|
||||
|
||||
.apiDetail button {width:16px; height:16px; vertical-align:middle; border:0 none; cursor: pointer;
|
||||
background-color:transparent; background-repeat:no-repeat; background-attachment: scroll;
|
||||
background-image:url("zTreeStyle/img/zTreeStandard.png");}
|
||||
|
||||
.apiDetail button.chk {width:13px; height:13px; margin:0 3px 2px 0; cursor: auto}
|
||||
.apiDetail button.chk.checkbox_false_full {background-position:0 0}
|
||||
.apiDetail button.chk.checkbox_false_full_focus {background-position:0 -14px}
|
||||
.apiDetail button.chk.checkbox_false_part {background-position:0 -28px}
|
||||
.apiDetail button.chk.checkbox_false_part_focus {background-position:0 -42px}
|
||||
.apiDetail button.chk.checkbox_true_full {background-position:-14px 0}
|
||||
.apiDetail button.chk.checkbox_true_full_focus {background-position:-14px -14px}
|
||||
.apiDetail button.chk.checkbox_true_part {background-position:-14px -28px}
|
||||
.apiDetail button.chk.checkbox_true_part_focus {background-position:-14px -42px}
|
||||
.apiDetail button.chk.radio_false_full {background-position:-28px 0}
|
||||
.apiDetail button.chk.radio_false_full_focus {background-position:-28px -14px}
|
||||
.apiDetail button.chk.radio_false_part {background-position:-28px -28px}
|
||||
.apiDetail button.chk.radio_false_part_focus {background-position:-28px -42px}
|
||||
.apiDetail button.chk.radio_true_full {background-position:-42px 0}
|
||||
.apiDetail button.chk.radio_true_full_focus {background-position:-42px -14px}
|
||||
.apiDetail button.chk.radio_true_part {background-position:-42px -28px}
|
||||
.apiDetail button.chk.radio_true_part_focus {background-position:-42px -42px}
|
||||
23
static/zTree3/api/apiCss/common_ie6.css
Normal file
@@ -0,0 +1,23 @@
|
||||
* html{
|
||||
/* background-image:url(about:blank);*/
|
||||
background-attachment:fixed;
|
||||
}
|
||||
html pre {word-wrap: break-word}
|
||||
.header {background-image: none;background-color: #F0F6E4;}
|
||||
|
||||
.ieSuggest {display:block;}
|
||||
.shortcuts button.cn {filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='apiCss/img/chinese.png');background-image: none;}
|
||||
.shortcuts button.en {filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='apiCss/img/english.png');background-image: none;}
|
||||
|
||||
.light-bulb {filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='apiCss/img/lightbulb.png');background-image: none;}
|
||||
.contentBox {background-image: none;background-color: #F0F6E4;}
|
||||
.zTreeInfo {background-image: none;background-color: #F0F6E4;}
|
||||
|
||||
.content button.ico16 {*background-image:url("img/apiMenu.gif")}
|
||||
.siteTag {background-image: none;}
|
||||
.apiContent .right {float: right;padding-right: 50px;}
|
||||
|
||||
div.baby_overlay {background-color: #3C6E31;background-image:none;color:#fff;}
|
||||
div.baby_overlay .close {filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='apiCss/img/overlay_close_IE6.gif');background-image: none;}
|
||||
.baby_overlay_arrow {background-image:url(img/overlay_arrow.gif);}
|
||||
.apiDetail button {background-image:url("img/zTreeStandard.gif")}
|
||||
BIN
static/zTree3/api/apiCss/img/apiMenu.gif
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
static/zTree3/api/apiCss/img/apiMenu.png
Normal file
|
After Width: | Height: | Size: 3.9 KiB |
BIN
static/zTree3/api/apiCss/img/background.jpg
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
static/zTree3/api/apiCss/img/chinese.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
static/zTree3/api/apiCss/img/close.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
static/zTree3/api/apiCss/img/contact-bg.png
Normal file
|
After Width: | Height: | Size: 177 B |
BIN
static/zTree3/api/apiCss/img/english.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
static/zTree3/api/apiCss/img/header-bg.png
Normal file
|
After Width: | Height: | Size: 148 B |
BIN
static/zTree3/api/apiCss/img/lightbulb.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
static/zTree3/api/apiCss/img/overlay_arrow.gif
Normal file
|
After Width: | Height: | Size: 625 B |
BIN
static/zTree3/api/apiCss/img/overlay_arrow.png
Normal file
|
After Width: | Height: | Size: 830 B |
BIN
static/zTree3/api/apiCss/img/overlay_bg.png
Normal file
|
After Width: | Height: | Size: 109 B |
BIN
static/zTree3/api/apiCss/img/overlay_close_IE6.gif
Normal file
|
After Width: | Height: | Size: 441 B |
BIN
static/zTree3/api/apiCss/img/zTreeStandard.gif
Normal file
|
After Width: | Height: | Size: 6.7 KiB |
BIN
static/zTree3/api/apiCss/img/zTreeStandard.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
18
static/zTree3/api/apiCss/jquery-1.6.2.min.js
vendored
Normal file
74
static/zTree3/api/apiCss/jquery.ztree.core.js
Normal file
@@ -0,0 +1,74 @@
|
||||
/*
|
||||
* JQuery zTree core v3.5.28
|
||||
* http://treejs.cn/
|
||||
*
|
||||
* Copyright (c) 2010 Hunter.z
|
||||
*
|
||||
* Licensed same as jquery - MIT License
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
*
|
||||
* email: hunter.z@263.net
|
||||
* Date: 2017-01-20
|
||||
*/
|
||||
(function(q){var H,I,J,K,L,M,u,r={},v={},w={},N={treeId:"",treeObj:null,view:{addDiyDom:null,autoCancelSelected:!0,dblClickExpand:!0,expandSpeed:"fast",fontCss:{},nameIsHTML:!1,selectedMulti:!0,showIcon:!0,showLine:!0,showTitle:!0,txtSelectedEnable:!1},data:{key:{children:"children",name:"name",title:"",url:"url",icon:"icon"},simpleData:{enable:!1,idKey:"id",pIdKey:"pId",rootPId:null},keep:{parent:!1,leaf:!1}},async:{enable:!1,contentType:"application/x-www-form-urlencoded",type:"post",dataType:"text",
|
||||
url:"",autoParam:[],otherParam:[],dataFilter:null},callback:{beforeAsync:null,beforeClick:null,beforeDblClick:null,beforeRightClick:null,beforeMouseDown:null,beforeMouseUp:null,beforeExpand:null,beforeCollapse:null,beforeRemove:null,onAsyncError:null,onAsyncSuccess:null,onNodeCreated:null,onClick:null,onDblClick:null,onRightClick:null,onMouseDown:null,onMouseUp:null,onExpand:null,onCollapse:null,onRemove:null}},x=[function(b){var a=b.treeObj,c=f.event;a.bind(c.NODECREATED,function(a,c,g){j.apply(b.callback.onNodeCreated,
|
||||
[a,c,g])});a.bind(c.CLICK,function(a,c,g,l,h){j.apply(b.callback.onClick,[c,g,l,h])});a.bind(c.EXPAND,function(a,c,g){j.apply(b.callback.onExpand,[a,c,g])});a.bind(c.COLLAPSE,function(a,c,g){j.apply(b.callback.onCollapse,[a,c,g])});a.bind(c.ASYNC_SUCCESS,function(a,c,g,l){j.apply(b.callback.onAsyncSuccess,[a,c,g,l])});a.bind(c.ASYNC_ERROR,function(a,c,g,l,h,f){j.apply(b.callback.onAsyncError,[a,c,g,l,h,f])});a.bind(c.REMOVE,function(a,c,g){j.apply(b.callback.onRemove,[a,c,g])});a.bind(c.SELECTED,
|
||||
function(a,c,g){j.apply(b.callback.onSelected,[c,g])});a.bind(c.UNSELECTED,function(a,c,g){j.apply(b.callback.onUnSelected,[c,g])})}],y=[function(b){var a=f.event;b.treeObj.unbind(a.NODECREATED).unbind(a.CLICK).unbind(a.EXPAND).unbind(a.COLLAPSE).unbind(a.ASYNC_SUCCESS).unbind(a.ASYNC_ERROR).unbind(a.REMOVE).unbind(a.SELECTED).unbind(a.UNSELECTED)}],z=[function(b){var a=h.getCache(b);a||(a={},h.setCache(b,a));a.nodes=[];a.doms=[]}],A=[function(b,a,c,d,e,g){if(c){var l=h.getRoot(b),f=b.data.key.children;
|
||||
c.level=a;c.tId=b.treeId+"_"+ ++l.zId;c.parentTId=d?d.tId:null;c.open=typeof c.open=="string"?j.eqs(c.open,"true"):!!c.open;c[f]&&c[f].length>0?(c.isParent=!0,c.zAsync=!0):(c.isParent=typeof c.isParent=="string"?j.eqs(c.isParent,"true"):!!c.isParent,c.open=c.isParent&&!b.async.enable?c.open:!1,c.zAsync=!c.isParent);c.isFirstNode=e;c.isLastNode=g;c.getParentNode=function(){return h.getNodeCache(b,c.parentTId)};c.getPreNode=function(){return h.getPreNode(b,c)};c.getNextNode=function(){return h.getNextNode(b,
|
||||
c)};c.getIndex=function(){return h.getNodeIndex(b,c)};c.getPath=function(){return h.getNodePath(b,c)};c.isAjaxing=!1;h.fixPIdKeyValue(b,c)}}],t=[function(b){var a=b.target,c=h.getSetting(b.data.treeId),d="",e=null,g="",l="",i=null,n=null,k=null;if(j.eqs(b.type,"mousedown"))l="mousedown";else if(j.eqs(b.type,"mouseup"))l="mouseup";else if(j.eqs(b.type,"contextmenu"))l="contextmenu";else if(j.eqs(b.type,"click"))if(j.eqs(a.tagName,"span")&&a.getAttribute("treeNode"+f.id.SWITCH)!==null)d=j.getNodeMainDom(a).id,
|
||||
g="switchNode";else{if(k=j.getMDom(c,a,[{tagName:"a",attrName:"treeNode"+f.id.A}]))d=j.getNodeMainDom(k).id,g="clickNode"}else if(j.eqs(b.type,"dblclick")&&(l="dblclick",k=j.getMDom(c,a,[{tagName:"a",attrName:"treeNode"+f.id.A}])))d=j.getNodeMainDom(k).id,g="switchNode";if(l.length>0&&d.length==0&&(k=j.getMDom(c,a,[{tagName:"a",attrName:"treeNode"+f.id.A}])))d=j.getNodeMainDom(k).id;if(d.length>0)switch(e=h.getNodeCache(c,d),g){case "switchNode":e.isParent?j.eqs(b.type,"click")||j.eqs(b.type,"dblclick")&&
|
||||
j.apply(c.view.dblClickExpand,[c.treeId,e],c.view.dblClickExpand)?i=H:g="":g="";break;case "clickNode":i=I}switch(l){case "mousedown":n=J;break;case "mouseup":n=K;break;case "dblclick":n=L;break;case "contextmenu":n=M}return{stop:!1,node:e,nodeEventType:g,nodeEventCallback:i,treeEventType:l,treeEventCallback:n}}],B=[function(b){var a=h.getRoot(b);a||(a={},h.setRoot(b,a));a[b.data.key.children]=[];a.expandTriggerFlag=!1;a.curSelectedList=[];a.noSelection=!0;a.createdNodes=[];a.zId=0;a._ver=(new Date).getTime()}],
|
||||
C=[],D=[],E=[],F=[],G=[],h={addNodeCache:function(b,a){h.getCache(b).nodes[h.getNodeCacheId(a.tId)]=a},getNodeCacheId:function(b){return b.substring(b.lastIndexOf("_")+1)},addAfterA:function(b){D.push(b)},addBeforeA:function(b){C.push(b)},addInnerAfterA:function(b){F.push(b)},addInnerBeforeA:function(b){E.push(b)},addInitBind:function(b){x.push(b)},addInitUnBind:function(b){y.push(b)},addInitCache:function(b){z.push(b)},addInitNode:function(b){A.push(b)},addInitProxy:function(b,a){a?t.splice(0,0,
|
||||
b):t.push(b)},addInitRoot:function(b){B.push(b)},addNodesData:function(b,a,c,d){var e=b.data.key.children;a[e]?c>=a[e].length&&(c=-1):(a[e]=[],c=-1);if(a[e].length>0&&c===0)a[e][0].isFirstNode=!1,i.setNodeLineIcos(b,a[e][0]);else if(a[e].length>0&&c<0)a[e][a[e].length-1].isLastNode=!1,i.setNodeLineIcos(b,a[e][a[e].length-1]);a.isParent=!0;c<0?a[e]=a[e].concat(d):(b=[c,0].concat(d),a[e].splice.apply(a[e],b))},addSelectedNode:function(b,a){var c=h.getRoot(b);h.isSelectedNode(b,a)||c.curSelectedList.push(a)},
|
||||
addCreatedNode:function(b,a){(b.callback.onNodeCreated||b.view.addDiyDom)&&h.getRoot(b).createdNodes.push(a)},addZTreeTools:function(b){G.push(b)},exSetting:function(b){q.extend(!0,N,b)},fixPIdKeyValue:function(b,a){b.data.simpleData.enable&&(a[b.data.simpleData.pIdKey]=a.parentTId?a.getParentNode()[b.data.simpleData.idKey]:b.data.simpleData.rootPId)},getAfterA:function(b,a,c){for(var d=0,e=D.length;d<e;d++)D[d].apply(this,arguments)},getBeforeA:function(b,a,c){for(var d=0,e=C.length;d<e;d++)C[d].apply(this,
|
||||
arguments)},getInnerAfterA:function(b,a,c){for(var d=0,e=F.length;d<e;d++)F[d].apply(this,arguments)},getInnerBeforeA:function(b,a,c){for(var d=0,e=E.length;d<e;d++)E[d].apply(this,arguments)},getCache:function(b){return w[b.treeId]},getNodeIndex:function(b,a){if(!a)return null;for(var c=b.data.key.children,d=a.parentTId?a.getParentNode():h.getRoot(b),e=0,g=d[c].length-1;e<=g;e++)if(d[c][e]===a)return e;return-1},getNextNode:function(b,a){if(!a)return null;for(var c=b.data.key.children,d=a.parentTId?
|
||||
a.getParentNode():h.getRoot(b),e=0,g=d[c].length-1;e<=g;e++)if(d[c][e]===a)return e==g?null:d[c][e+1];return null},getNodeByParam:function(b,a,c,d){if(!a||!c)return null;for(var e=b.data.key.children,g=0,l=a.length;g<l;g++){if(a[g][c]==d)return a[g];var f=h.getNodeByParam(b,a[g][e],c,d);if(f)return f}return null},getNodeCache:function(b,a){if(!a)return null;var c=w[b.treeId].nodes[h.getNodeCacheId(a)];return c?c:null},getNodeName:function(b,a){return""+a[b.data.key.name]},getNodePath:function(b,a){if(!a)return null;
|
||||
var c;(c=a.parentTId?a.getParentNode().getPath():[])&&c.push(a);return c},getNodeTitle:function(b,a){return""+a[b.data.key.title===""?b.data.key.name:b.data.key.title]},getNodes:function(b){return h.getRoot(b)[b.data.key.children]},getNodesByParam:function(b,a,c,d){if(!a||!c)return[];for(var e=b.data.key.children,g=[],l=0,f=a.length;l<f;l++)a[l][c]==d&&g.push(a[l]),g=g.concat(h.getNodesByParam(b,a[l][e],c,d));return g},getNodesByParamFuzzy:function(b,a,c,d){if(!a||!c)return[];for(var e=b.data.key.children,
|
||||
g=[],d=d.toLowerCase(),l=0,f=a.length;l<f;l++)typeof a[l][c]=="string"&&a[l][c].toLowerCase().indexOf(d)>-1&&g.push(a[l]),g=g.concat(h.getNodesByParamFuzzy(b,a[l][e],c,d));return g},getNodesByFilter:function(b,a,c,d,e){if(!a)return d?null:[];for(var g=b.data.key.children,f=d?null:[],i=0,n=a.length;i<n;i++){if(j.apply(c,[a[i],e],!1)){if(d)return a[i];f.push(a[i])}var k=h.getNodesByFilter(b,a[i][g],c,d,e);if(d&&k)return k;f=d?k:f.concat(k)}return f},getPreNode:function(b,a){if(!a)return null;for(var c=
|
||||
b.data.key.children,d=a.parentTId?a.getParentNode():h.getRoot(b),e=0,g=d[c].length;e<g;e++)if(d[c][e]===a)return e==0?null:d[c][e-1];return null},getRoot:function(b){return b?v[b.treeId]:null},getRoots:function(){return v},getSetting:function(b){return r[b]},getSettings:function(){return r},getZTreeTools:function(b){return(b=this.getRoot(this.getSetting(b)))?b.treeTools:null},initCache:function(b){for(var a=0,c=z.length;a<c;a++)z[a].apply(this,arguments)},initNode:function(b,a,c,d,e,g){for(var f=
|
||||
0,h=A.length;f<h;f++)A[f].apply(this,arguments)},initRoot:function(b){for(var a=0,c=B.length;a<c;a++)B[a].apply(this,arguments)},isSelectedNode:function(b,a){for(var c=h.getRoot(b),d=0,e=c.curSelectedList.length;d<e;d++)if(a===c.curSelectedList[d])return!0;return!1},removeNodeCache:function(b,a){var c=b.data.key.children;if(a[c])for(var d=0,e=a[c].length;d<e;d++)h.removeNodeCache(b,a[c][d]);h.getCache(b).nodes[h.getNodeCacheId(a.tId)]=null},removeSelectedNode:function(b,a){for(var c=h.getRoot(b),
|
||||
d=0,e=c.curSelectedList.length;d<e;d++)if(a===c.curSelectedList[d]||!h.getNodeCache(b,c.curSelectedList[d].tId))c.curSelectedList.splice(d,1),b.treeObj.trigger(f.event.UNSELECTED,[b.treeId,a]),d--,e--},setCache:function(b,a){w[b.treeId]=a},setRoot:function(b,a){v[b.treeId]=a},setZTreeTools:function(b,a){for(var c=0,d=G.length;c<d;c++)G[c].apply(this,arguments)},transformToArrayFormat:function(b,a){if(!a)return[];var c=b.data.key.children,d=[];if(j.isArray(a))for(var e=0,g=a.length;e<g;e++)d.push(a[e]),
|
||||
a[e][c]&&(d=d.concat(h.transformToArrayFormat(b,a[e][c])));else d.push(a),a[c]&&(d=d.concat(h.transformToArrayFormat(b,a[c])));return d},transformTozTreeFormat:function(b,a){var c,d,e=b.data.simpleData.idKey,g=b.data.simpleData.pIdKey,f=b.data.key.children;if(!e||e==""||!a)return[];if(j.isArray(a)){var h=[],i={};for(c=0,d=a.length;c<d;c++)i[a[c][e]]=a[c];for(c=0,d=a.length;c<d;c++)i[a[c][g]]&&a[c][e]!=a[c][g]?(i[a[c][g]][f]||(i[a[c][g]][f]=[]),i[a[c][g]][f].push(a[c])):h.push(a[c]);return h}else return[a]}},
|
||||
m={bindEvent:function(b){for(var a=0,c=x.length;a<c;a++)x[a].apply(this,arguments)},unbindEvent:function(b){for(var a=0,c=y.length;a<c;a++)y[a].apply(this,arguments)},bindTree:function(b){var a={treeId:b.treeId},c=b.treeObj;b.view.txtSelectedEnable||c.bind("selectstart",u).css({"-moz-user-select":"-moz-none"});c.bind("click",a,m.proxy);c.bind("dblclick",a,m.proxy);c.bind("mouseover",a,m.proxy);c.bind("mouseout",a,m.proxy);c.bind("mousedown",a,m.proxy);c.bind("mouseup",a,m.proxy);c.bind("contextmenu",
|
||||
a,m.proxy)},unbindTree:function(b){b.treeObj.unbind("selectstart",u).unbind("click",m.proxy).unbind("dblclick",m.proxy).unbind("mouseover",m.proxy).unbind("mouseout",m.proxy).unbind("mousedown",m.proxy).unbind("mouseup",m.proxy).unbind("contextmenu",m.proxy)},doProxy:function(b){for(var a=[],c=0,d=t.length;c<d;c++){var e=t[c].apply(this,arguments);a.push(e);if(e.stop)break}return a},proxy:function(b){var a=h.getSetting(b.data.treeId);if(!j.uCanDo(a,b))return!0;for(var a=m.doProxy(b),c=!0,d=0,e=a.length;d<
|
||||
e;d++){var g=a[d];g.nodeEventCallback&&(c=g.nodeEventCallback.apply(g,[b,g.node])&&c);g.treeEventCallback&&(c=g.treeEventCallback.apply(g,[b,g.node])&&c)}return c}};H=function(b,a){var c=h.getSetting(b.data.treeId);if(a.open){if(j.apply(c.callback.beforeCollapse,[c.treeId,a],!0)==!1)return!0}else if(j.apply(c.callback.beforeExpand,[c.treeId,a],!0)==!1)return!0;h.getRoot(c).expandTriggerFlag=!0;i.switchNode(c,a);return!0};I=function(b,a){var c=h.getSetting(b.data.treeId),d=c.view.autoCancelSelected&&
|
||||
(b.ctrlKey||b.metaKey)&&h.isSelectedNode(c,a)?0:c.view.autoCancelSelected&&(b.ctrlKey||b.metaKey)&&c.view.selectedMulti?2:1;if(j.apply(c.callback.beforeClick,[c.treeId,a,d],!0)==!1)return!0;d===0?i.cancelPreSelectedNode(c,a):i.selectNode(c,a,d===2);c.treeObj.trigger(f.event.CLICK,[b,c.treeId,a,d]);return!0};J=function(b,a){var c=h.getSetting(b.data.treeId);j.apply(c.callback.beforeMouseDown,[c.treeId,a],!0)&&j.apply(c.callback.onMouseDown,[b,c.treeId,a]);return!0};K=function(b,a){var c=h.getSetting(b.data.treeId);
|
||||
j.apply(c.callback.beforeMouseUp,[c.treeId,a],!0)&&j.apply(c.callback.onMouseUp,[b,c.treeId,a]);return!0};L=function(b,a){var c=h.getSetting(b.data.treeId);j.apply(c.callback.beforeDblClick,[c.treeId,a],!0)&&j.apply(c.callback.onDblClick,[b,c.treeId,a]);return!0};M=function(b,a){var c=h.getSetting(b.data.treeId);j.apply(c.callback.beforeRightClick,[c.treeId,a],!0)&&j.apply(c.callback.onRightClick,[b,c.treeId,a]);return typeof c.callback.onRightClick!="function"};u=function(b){b=b.originalEvent.srcElement.nodeName.toLowerCase();
|
||||
return b==="input"||b==="textarea"};var j={apply:function(b,a,c){return typeof b=="function"?b.apply(O,a?a:[]):c},canAsync:function(b,a){var c=b.data.key.children;return b.async.enable&&a&&a.isParent&&!(a.zAsync||a[c]&&a[c].length>0)},clone:function(b){if(b===null)return null;var a=j.isArray(b)?[]:{},c;for(c in b)a[c]=b[c]instanceof Date?new Date(b[c].getTime()):typeof b[c]==="object"?j.clone(b[c]):b[c];return a},eqs:function(b,a){return b.toLowerCase()===a.toLowerCase()},isArray:function(b){return Object.prototype.toString.apply(b)===
|
||||
"[object Array]"},isElement:function(b){return typeof HTMLElement==="object"?b instanceof HTMLElement:b&&typeof b==="object"&&b!==null&&b.nodeType===1&&typeof b.nodeName==="string"},$:function(b,a,c){a&&typeof a!="string"&&(c=a,a="");return typeof b=="string"?q(b,c?c.treeObj.get(0).ownerDocument:null):q("#"+b.tId+a,c?c.treeObj:null)},getMDom:function(b,a,c){if(!a)return null;for(;a&&a.id!==b.treeId;){for(var d=0,e=c.length;a.tagName&&d<e;d++)if(j.eqs(a.tagName,c[d].tagName)&&a.getAttribute(c[d].attrName)!==
|
||||
null)return a;a=a.parentNode}return null},getNodeMainDom:function(b){return q(b).parent("li").get(0)||q(b).parentsUntil("li").parent().get(0)},isChildOrSelf:function(b,a){return q(b).closest("#"+a).length>0},uCanDo:function(){return!0}},i={addNodes:function(b,a,c,d,e){if(!b.data.keep.leaf||!a||a.isParent)if(j.isArray(d)||(d=[d]),b.data.simpleData.enable&&(d=h.transformTozTreeFormat(b,d)),a){var g=k(a,f.id.SWITCH,b),l=k(a,f.id.ICON,b),p=k(a,f.id.UL,b);if(!a.open)i.replaceSwitchClass(a,g,f.folder.CLOSE),
|
||||
i.replaceIcoClass(a,l,f.folder.CLOSE),a.open=!1,p.css({display:"none"});h.addNodesData(b,a,c,d);i.createNodes(b,a.level+1,d,a,c);e||i.expandCollapseParentNode(b,a,!0)}else h.addNodesData(b,h.getRoot(b),c,d),i.createNodes(b,0,d,null,c)},appendNodes:function(b,a,c,d,e,g,f){if(!c)return[];var j=[],n=b.data.key.children,k=(d?d:h.getRoot(b))[n],m,Q;if(!k||e>=k.length-c.length)e=-1;for(var s=0,R=c.length;s<R;s++){var o=c[s];g&&(m=(e===0||k.length==c.length)&&s==0,Q=e<0&&s==c.length-1,h.initNode(b,a,o,d,
|
||||
m,Q,f),h.addNodeCache(b,o));m=[];o[n]&&o[n].length>0&&(m=i.appendNodes(b,a+1,o[n],o,-1,g,f&&o.open));f&&(i.makeDOMNodeMainBefore(j,b,o),i.makeDOMNodeLine(j,b,o),h.getBeforeA(b,o,j),i.makeDOMNodeNameBefore(j,b,o),h.getInnerBeforeA(b,o,j),i.makeDOMNodeIcon(j,b,o),h.getInnerAfterA(b,o,j),i.makeDOMNodeNameAfter(j,b,o),h.getAfterA(b,o,j),o.isParent&&o.open&&i.makeUlHtml(b,o,j,m.join("")),i.makeDOMNodeMainAfter(j,b,o),h.addCreatedNode(b,o))}return j},appendParentULDom:function(b,a){var c=[],d=k(a,b);!d.get(0)&&
|
||||
a.parentTId&&(i.appendParentULDom(b,a.getParentNode()),d=k(a,b));var e=k(a,f.id.UL,b);e.get(0)&&e.remove();e=i.appendNodes(b,a.level+1,a[b.data.key.children],a,-1,!1,!0);i.makeUlHtml(b,a,c,e.join(""));d.append(c.join(""))},asyncNode:function(b,a,c,d){var e,g;if(a&&!a.isParent)return j.apply(d),!1;else if(a&&a.isAjaxing)return!1;else if(j.apply(b.callback.beforeAsync,[b.treeId,a],!0)==!1)return j.apply(d),!1;if(a)a.isAjaxing=!0,k(a,f.id.ICON,b).attr({style:"","class":f.className.BUTTON+" "+f.className.ICO_LOADING});
|
||||
var l={};for(e=0,g=b.async.autoParam.length;a&&e<g;e++){var p=b.async.autoParam[e].split("="),n=p;p.length>1&&(n=p[1],p=p[0]);l[n]=a[p]}if(j.isArray(b.async.otherParam))for(e=0,g=b.async.otherParam.length;e<g;e+=2)l[b.async.otherParam[e]]=b.async.otherParam[e+1];else for(var m in b.async.otherParam)l[m]=b.async.otherParam[m];var P=h.getRoot(b)._ver;q.ajax({contentType:b.async.contentType,cache:!1,type:b.async.type,url:j.apply(b.async.url,[b.treeId,a],b.async.url),data:b.async.contentType.indexOf("application/json")>
|
||||
-1?JSON.stringify(l):l,dataType:b.async.dataType,success:function(e){if(P==h.getRoot(b)._ver){var g=[];try{g=!e||e.length==0?[]:typeof e=="string"?eval("("+e+")"):e}catch(l){g=e}if(a)a.isAjaxing=null,a.zAsync=!0;i.setNodeLineIcos(b,a);g&&g!==""?(g=j.apply(b.async.dataFilter,[b.treeId,a,g],g),i.addNodes(b,a,-1,g?j.clone(g):[],!!c)):i.addNodes(b,a,-1,[],!!c);b.treeObj.trigger(f.event.ASYNC_SUCCESS,[b.treeId,a,e]);j.apply(d)}},error:function(c,d,e){if(P==h.getRoot(b)._ver){if(a)a.isAjaxing=null;i.setNodeLineIcos(b,
|
||||
a);b.treeObj.trigger(f.event.ASYNC_ERROR,[b.treeId,a,c,d,e])}}});return!0},cancelPreSelectedNode:function(b,a,c){var d=h.getRoot(b).curSelectedList,e,g;for(e=d.length-1;e>=0;e--)if(g=d[e],a===g||!a&&(!c||c!==g))if(k(g,f.id.A,b).removeClass(f.node.CURSELECTED),a){h.removeSelectedNode(b,a);break}else d.splice(e,1),b.treeObj.trigger(f.event.UNSELECTED,[b.treeId,g])},createNodeCallback:function(b){if(b.callback.onNodeCreated||b.view.addDiyDom)for(var a=h.getRoot(b);a.createdNodes.length>0;){var c=a.createdNodes.shift();
|
||||
j.apply(b.view.addDiyDom,[b.treeId,c]);b.callback.onNodeCreated&&b.treeObj.trigger(f.event.NODECREATED,[b.treeId,c])}},createNodes:function(b,a,c,d,e){if(c&&c.length!=0){var g=h.getRoot(b),l=b.data.key.children,l=!d||d.open||!!k(d[l][0],b).get(0);g.createdNodes=[];var a=i.appendNodes(b,a,c,d,e,!0,l),j,n;d?(d=k(d,f.id.UL,b),d.get(0)&&(j=d)):j=b.treeObj;j&&(e>=0&&(n=j.children()[e]),e>=0&&n?q(n).before(a.join("")):j.append(a.join("")));i.createNodeCallback(b)}},destroy:function(b){b&&(h.initCache(b),
|
||||
h.initRoot(b),m.unbindTree(b),m.unbindEvent(b),b.treeObj.empty(),delete r[b.treeId])},expandCollapseNode:function(b,a,c,d,e){var g=h.getRoot(b),l=b.data.key.children,p;if(a){if(g.expandTriggerFlag)p=e,e=function(){p&&p();a.open?b.treeObj.trigger(f.event.EXPAND,[b.treeId,a]):b.treeObj.trigger(f.event.COLLAPSE,[b.treeId,a])},g.expandTriggerFlag=!1;if(!a.open&&a.isParent&&(!k(a,f.id.UL,b).get(0)||a[l]&&a[l].length>0&&!k(a[l][0],b).get(0)))i.appendParentULDom(b,a),i.createNodeCallback(b);if(a.open==c)j.apply(e,
|
||||
[]);else{var c=k(a,f.id.UL,b),g=k(a,f.id.SWITCH,b),n=k(a,f.id.ICON,b);a.isParent?(a.open=!a.open,a.iconOpen&&a.iconClose&&n.attr("style",i.makeNodeIcoStyle(b,a)),a.open?(i.replaceSwitchClass(a,g,f.folder.OPEN),i.replaceIcoClass(a,n,f.folder.OPEN),d==!1||b.view.expandSpeed==""?(c.show(),j.apply(e,[])):a[l]&&a[l].length>0?c.slideDown(b.view.expandSpeed,e):(c.show(),j.apply(e,[]))):(i.replaceSwitchClass(a,g,f.folder.CLOSE),i.replaceIcoClass(a,n,f.folder.CLOSE),d==!1||b.view.expandSpeed==""||!(a[l]&&
|
||||
a[l].length>0)?(c.hide(),j.apply(e,[])):c.slideUp(b.view.expandSpeed,e))):j.apply(e,[])}}else j.apply(e,[])},expandCollapseParentNode:function(b,a,c,d,e){a&&(a.parentTId?(i.expandCollapseNode(b,a,c,d),a.parentTId&&i.expandCollapseParentNode(b,a.getParentNode(),c,d,e)):i.expandCollapseNode(b,a,c,d,e))},expandCollapseSonNode:function(b,a,c,d,e){var g=h.getRoot(b),f=b.data.key.children,g=a?a[f]:g[f],f=a?!1:d,j=h.getRoot(b).expandTriggerFlag;h.getRoot(b).expandTriggerFlag=!1;if(g)for(var k=0,m=g.length;k<
|
||||
m;k++)g[k]&&i.expandCollapseSonNode(b,g[k],c,f);h.getRoot(b).expandTriggerFlag=j;i.expandCollapseNode(b,a,c,d,e)},isSelectedNode:function(b,a){if(!a)return!1;var c=h.getRoot(b).curSelectedList,d;for(d=c.length-1;d>=0;d--)if(a===c[d])return!0;return!1},makeDOMNodeIcon:function(b,a,c){var d=h.getNodeName(a,c),d=a.view.nameIsHTML?d:d.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">");b.push("<span id='",c.tId,f.id.ICON,"' title='' treeNode",f.id.ICON," class='",i.makeNodeIcoClass(a,c),"' style='",
|
||||
i.makeNodeIcoStyle(a,c),"'></span><span id='",c.tId,f.id.SPAN,"' class='",f.className.NAME,"'>",d,"</span>")},makeDOMNodeLine:function(b,a,c){b.push("<span id='",c.tId,f.id.SWITCH,"' title='' class='",i.makeNodeLineClass(a,c),"' treeNode",f.id.SWITCH,"></span>")},makeDOMNodeMainAfter:function(b){b.push("</li>")},makeDOMNodeMainBefore:function(b,a,c){b.push("<li id='",c.tId,"' class='",f.className.LEVEL,c.level,"' tabindex='0' hidefocus='true' treenode>")},makeDOMNodeNameAfter:function(b){b.push("</a>")},
|
||||
makeDOMNodeNameBefore:function(b,a,c){var d=h.getNodeTitle(a,c),e=i.makeNodeUrl(a,c),g=i.makeNodeFontCss(a,c),l=[],k;for(k in g)l.push(k,":",g[k],";");b.push("<a id='",c.tId,f.id.A,"' class='",f.className.LEVEL,c.level,"' treeNode",f.id.A,' onclick="',c.click||"",'" ',e!=null&&e.length>0?"href='"+e+"'":""," target='",i.makeNodeTarget(c),"' style='",l.join(""),"'");j.apply(a.view.showTitle,[a.treeId,c],a.view.showTitle)&&d&&b.push("title='",d.replace(/'/g,"'").replace(/</g,"<").replace(/>/g,
|
||||
">"),"'");b.push(">")},makeNodeFontCss:function(b,a){var c=j.apply(b.view.fontCss,[b.treeId,a],b.view.fontCss);return c&&typeof c!="function"?c:{}},makeNodeIcoClass:function(b,a){var c=["ico"];a.isAjaxing||(c[0]=(a.iconSkin?a.iconSkin+"_":"")+c[0],a.isParent?c.push(a.open?f.folder.OPEN:f.folder.CLOSE):c.push(f.folder.DOCU));return f.className.BUTTON+" "+c.join("_")},makeNodeIcoStyle:function(b,a){var c=[];if(!a.isAjaxing){var d=a.isParent&&a.iconOpen&&a.iconClose?a.open?a.iconOpen:a.iconClose:
|
||||
a[b.data.key.icon];d&&c.push("background:url(",d,") 0 0 no-repeat;");(b.view.showIcon==!1||!j.apply(b.view.showIcon,[b.treeId,a],!0))&&c.push("width:0px;height:0px;")}return c.join("")},makeNodeLineClass:function(b,a){var c=[];b.view.showLine?a.level==0&&a.isFirstNode&&a.isLastNode?c.push(f.line.ROOT):a.level==0&&a.isFirstNode?c.push(f.line.ROOTS):a.isLastNode?c.push(f.line.BOTTOM):c.push(f.line.CENTER):c.push(f.line.NOLINE);a.isParent?c.push(a.open?f.folder.OPEN:f.folder.CLOSE):c.push(f.folder.DOCU);
|
||||
return i.makeNodeLineClassEx(a)+c.join("_")},makeNodeLineClassEx:function(b){return f.className.BUTTON+" "+f.className.LEVEL+b.level+" "+f.className.SWITCH+" "},makeNodeTarget:function(b){return b.target||"_blank"},makeNodeUrl:function(b,a){var c=b.data.key.url;return a[c]?a[c]:null},makeUlHtml:function(b,a,c,d){c.push("<ul id='",a.tId,f.id.UL,"' class='",f.className.LEVEL,a.level," ",i.makeUlLineClass(b,a),"' style='display:",a.open?"block":"none","'>");c.push(d);c.push("</ul>")},makeUlLineClass:function(b,
|
||||
a){return b.view.showLine&&!a.isLastNode?f.line.LINE:""},removeChildNodes:function(b,a){if(a){var c=b.data.key.children,d=a[c];if(d){for(var e=0,g=d.length;e<g;e++)h.removeNodeCache(b,d[e]);h.removeSelectedNode(b);delete a[c];b.data.keep.parent?k(a,f.id.UL,b).empty():(a.isParent=!1,a.open=!1,c=k(a,f.id.SWITCH,b),d=k(a,f.id.ICON,b),i.replaceSwitchClass(a,c,f.folder.DOCU),i.replaceIcoClass(a,d,f.folder.DOCU),k(a,f.id.UL,b).remove())}}},scrollIntoView:function(b){if(b){if(!Element.prototype.scrollIntoViewIfNeeded)Element.prototype.scrollIntoViewIfNeeded=
|
||||
function(a){function b(a,d,e,f){return{left:a,top:d,width:e,height:f,right:a+e,bottom:d+f,translate:function(g,h){return b(g+a,h+d,e,f)},relativeFromTo:function(h,i){var j=a,l=d,h=h.offsetParent,i=i.offsetParent;if(h===i)return g;for(;h;h=h.offsetParent)j+=h.offsetLeft+h.clientLeft,l+=h.offsetTop+h.clientTop;for(;i;i=i.offsetParent)j-=i.offsetLeft+i.clientLeft,l-=i.offsetTop+i.clientTop;return b(j,l,e,f)}}}for(var d,e=this,g=b(this.offsetLeft,this.offsetTop,this.offsetWidth,this.offsetHeight);j.isElement(d=
|
||||
e.parentNode);){var f=d.offsetLeft+d.clientLeft,h=d.offsetTop+d.clientTop,g=g.relativeFromTo(e,d).translate(-f,-h);d.scrollLeft=!1===a||g.left<=d.scrollLeft+d.clientWidth&&d.scrollLeft<=g.right-d.clientWidth+d.clientWidth?Math.min(g.left,Math.max(g.right-d.clientWidth,d.scrollLeft)):(g.right-d.clientWidth+g.left)/2;d.scrollTop=!1===a||g.top<=d.scrollTop+d.clientHeight&&d.scrollTop<=g.bottom-d.clientHeight+d.clientHeight?Math.min(g.top,Math.max(g.bottom-d.clientHeight,d.scrollTop)):(g.bottom-d.clientHeight+
|
||||
g.top)/2;g=g.translate(f-d.scrollLeft,h-d.scrollTop);e=d}};b.scrollIntoViewIfNeeded()}},setFirstNode:function(b,a){var c=b.data.key.children;if(a[c].length>0)a[c][0].isFirstNode=!0},setLastNode:function(b,a){var c=b.data.key.children,d=a[c].length;if(d>0)a[c][d-1].isLastNode=!0},removeNode:function(b,a){var c=h.getRoot(b),d=b.data.key.children,e=a.parentTId?a.getParentNode():c;a.isFirstNode=!1;a.isLastNode=!1;a.getPreNode=function(){return null};a.getNextNode=function(){return null};if(h.getNodeCache(b,
|
||||
a.tId)){k(a,b).remove();h.removeNodeCache(b,a);h.removeSelectedNode(b,a);for(var g=0,j=e[d].length;g<j;g++)if(e[d][g].tId==a.tId){e[d].splice(g,1);break}i.setFirstNode(b,e);i.setLastNode(b,e);var p,g=e[d].length;if(!b.data.keep.parent&&g==0)e.isParent=!1,e.open=!1,g=k(e,f.id.UL,b),j=k(e,f.id.SWITCH,b),p=k(e,f.id.ICON,b),i.replaceSwitchClass(e,j,f.folder.DOCU),i.replaceIcoClass(e,p,f.folder.DOCU),g.css("display","none");else if(b.view.showLine&&g>0){var n=e[d][g-1],g=k(n,f.id.UL,b),j=k(n,f.id.SWITCH,
|
||||
b);p=k(n,f.id.ICON,b);e==c?e[d].length==1?i.replaceSwitchClass(n,j,f.line.ROOT):(c=k(e[d][0],f.id.SWITCH,b),i.replaceSwitchClass(e[d][0],c,f.line.ROOTS),i.replaceSwitchClass(n,j,f.line.BOTTOM)):i.replaceSwitchClass(n,j,f.line.BOTTOM);g.removeClass(f.line.LINE)}}},replaceIcoClass:function(b,a,c){if(a&&!b.isAjaxing&&(b=a.attr("class"),b!=void 0)){b=b.split("_");switch(c){case f.folder.OPEN:case f.folder.CLOSE:case f.folder.DOCU:b[b.length-1]=c}a.attr("class",b.join("_"))}},replaceSwitchClass:function(b,
|
||||
a,c){if(a){var d=a.attr("class");if(d!=void 0){d=d.split("_");switch(c){case f.line.ROOT:case f.line.ROOTS:case f.line.CENTER:case f.line.BOTTOM:case f.line.NOLINE:d[0]=i.makeNodeLineClassEx(b)+c;break;case f.folder.OPEN:case f.folder.CLOSE:case f.folder.DOCU:d[1]=c}a.attr("class",d.join("_"));c!==f.folder.DOCU?a.removeAttr("disabled"):a.attr("disabled","disabled")}}},selectNode:function(b,a,c){c||i.cancelPreSelectedNode(b,null,a);k(a,f.id.A,b).addClass(f.node.CURSELECTED);h.addSelectedNode(b,a);
|
||||
b.treeObj.trigger(f.event.SELECTED,[b.treeId,a])},setNodeFontCss:function(b,a){var c=k(a,f.id.A,b),d=i.makeNodeFontCss(b,a);d&&c.css(d)},setNodeLineIcos:function(b,a){if(a){var c=k(a,f.id.SWITCH,b),d=k(a,f.id.UL,b),e=k(a,f.id.ICON,b),g=i.makeUlLineClass(b,a);g.length==0?d.removeClass(f.line.LINE):d.addClass(g);c.attr("class",i.makeNodeLineClass(b,a));a.isParent?c.removeAttr("disabled"):c.attr("disabled","disabled");e.removeAttr("style");e.attr("style",i.makeNodeIcoStyle(b,a));e.attr("class",i.makeNodeIcoClass(b,
|
||||
a))}},setNodeName:function(b,a){var c=h.getNodeTitle(b,a),d=k(a,f.id.SPAN,b);d.empty();b.view.nameIsHTML?d.html(h.getNodeName(b,a)):d.text(h.getNodeName(b,a));j.apply(b.view.showTitle,[b.treeId,a],b.view.showTitle)&&k(a,f.id.A,b).attr("title",!c?"":c)},setNodeTarget:function(b,a){k(a,f.id.A,b).attr("target",i.makeNodeTarget(a))},setNodeUrl:function(b,a){var c=k(a,f.id.A,b),d=i.makeNodeUrl(b,a);d==null||d.length==0?c.removeAttr("href"):c.attr("href",d)},switchNode:function(b,a){a.open||!j.canAsync(b,
|
||||
a)?i.expandCollapseNode(b,a,!a.open):b.async.enable?i.asyncNode(b,a)||i.expandCollapseNode(b,a,!a.open):a&&i.expandCollapseNode(b,a,!a.open)}};q.fn.zTree={consts:{className:{BUTTON:"button",LEVEL:"level",ICO_LOADING:"ico_loading",SWITCH:"switch",NAME:"node_name"},event:{NODECREATED:"ztree_nodeCreated",CLICK:"ztree_click",EXPAND:"ztree_expand",COLLAPSE:"ztree_collapse",ASYNC_SUCCESS:"ztree_async_success",ASYNC_ERROR:"ztree_async_error",REMOVE:"ztree_remove",SELECTED:"ztree_selected",UNSELECTED:"ztree_unselected"},
|
||||
id:{A:"_a",ICON:"_ico",SPAN:"_span",SWITCH:"_switch",UL:"_ul"},line:{ROOT:"root",ROOTS:"roots",CENTER:"center",BOTTOM:"bottom",NOLINE:"noline",LINE:"line"},folder:{OPEN:"open",CLOSE:"close",DOCU:"docu"},node:{CURSELECTED:"curSelectedNode"}},_z:{tools:j,view:i,event:m,data:h},getZTreeObj:function(b){return(b=h.getZTreeTools(b))?b:null},destroy:function(b){if(b&&b.length>0)i.destroy(h.getSetting(b));else for(var a in r)i.destroy(r[a])},init:function(b,a,c){var d=j.clone(N);q.extend(!0,d,a);d.treeId=
|
||||
b.attr("id");d.treeObj=b;d.treeObj.empty();r[d.treeId]=d;if(typeof document.body.style.maxHeight==="undefined")d.view.expandSpeed="";h.initRoot(d);b=h.getRoot(d);a=d.data.key.children;c=c?j.clone(j.isArray(c)?c:[c]):[];b[a]=d.data.simpleData.enable?h.transformTozTreeFormat(d,c):c;h.initCache(d);m.unbindTree(d);m.bindTree(d);m.unbindEvent(d);m.bindEvent(d);c={setting:d,addNodes:function(a,b,c,f){function h(){i.addNodes(d,a,b,m,f==!0)}a||(a=null);if(a&&!a.isParent&&d.data.keep.leaf)return null;var k=
|
||||
parseInt(b,10);isNaN(k)?(f=!!c,c=b,b=-1):b=k;if(!c)return null;var m=j.clone(j.isArray(c)?c:[c]);j.canAsync(d,a)?i.asyncNode(d,a,f,h):h();return m},cancelSelectedNode:function(a){i.cancelPreSelectedNode(d,a)},destroy:function(){i.destroy(d)},expandAll:function(a){a=!!a;i.expandCollapseSonNode(d,null,a,!0);return a},expandNode:function(a,b,c,f,n){function m(){var b=k(a,d).get(0);b&&f!==!1&&i.scrollIntoView(b)}if(!a||!a.isParent)return null;b!==!0&&b!==!1&&(b=!a.open);if((n=!!n)&&b&&j.apply(d.callback.beforeExpand,
|
||||
[d.treeId,a],!0)==!1)return null;else if(n&&!b&&j.apply(d.callback.beforeCollapse,[d.treeId,a],!0)==!1)return null;b&&a.parentTId&&i.expandCollapseParentNode(d,a.getParentNode(),b,!1);if(b===a.open&&!c)return null;h.getRoot(d).expandTriggerFlag=n;!j.canAsync(d,a)&&c?i.expandCollapseSonNode(d,a,b,!0,m):(a.open=!b,i.switchNode(this.setting,a),m());return b},getNodes:function(){return h.getNodes(d)},getNodeByParam:function(a,b,c){return!a?null:h.getNodeByParam(d,c?c[d.data.key.children]:h.getNodes(d),
|
||||
a,b)},getNodeByTId:function(a){return h.getNodeCache(d,a)},getNodesByParam:function(a,b,c){return!a?null:h.getNodesByParam(d,c?c[d.data.key.children]:h.getNodes(d),a,b)},getNodesByParamFuzzy:function(a,b,c){return!a?null:h.getNodesByParamFuzzy(d,c?c[d.data.key.children]:h.getNodes(d),a,b)},getNodesByFilter:function(a,b,c,f){b=!!b;return!a||typeof a!="function"?b?null:[]:h.getNodesByFilter(d,c?c[d.data.key.children]:h.getNodes(d),a,b,f)},getNodeIndex:function(a){if(!a)return null;for(var b=d.data.key.children,
|
||||
c=a.parentTId?a.getParentNode():h.getRoot(d),f=0,i=c[b].length;f<i;f++)if(c[b][f]==a)return f;return-1},getSelectedNodes:function(){for(var a=[],b=h.getRoot(d).curSelectedList,c=0,f=b.length;c<f;c++)a.push(b[c]);return a},isSelectedNode:function(a){return h.isSelectedNode(d,a)},reAsyncChildNodes:function(a,b,c){if(this.setting.async.enable){var j=!a;j&&(a=h.getRoot(d));if(b=="refresh"){for(var b=this.setting.data.key.children,n=0,m=a[b]?a[b].length:0;n<m;n++)h.removeNodeCache(d,a[b][n]);h.removeSelectedNode(d);
|
||||
a[b]=[];j?this.setting.treeObj.empty():k(a,f.id.UL,d).empty()}i.asyncNode(this.setting,j?null:a,!!c)}},refresh:function(){this.setting.treeObj.empty();var a=h.getRoot(d),b=a[d.data.key.children];h.initRoot(d);a[d.data.key.children]=b;h.initCache(d);i.createNodes(d,0,a[d.data.key.children],null,-1)},removeChildNodes:function(a){if(!a)return null;var b=a[d.data.key.children];i.removeChildNodes(d,a);return b?b:null},removeNode:function(a,b){a&&(b=!!b,b&&j.apply(d.callback.beforeRemove,[d.treeId,a],!0)==
|
||||
!1||(i.removeNode(d,a),b&&this.setting.treeObj.trigger(f.event.REMOVE,[d.treeId,a])))},selectNode:function(a,b,c){function f(){if(!c){var b=k(a,d).get(0);i.scrollIntoView(b)}}if(a&&j.uCanDo(d)){b=d.view.selectedMulti&&b;if(a.parentTId)i.expandCollapseParentNode(d,a.getParentNode(),!0,!1,f);else if(!c)try{k(a,d).focus().blur()}catch(h){}i.selectNode(d,a,b)}},transformTozTreeNodes:function(a){return h.transformTozTreeFormat(d,a)},transformToArray:function(a){return h.transformToArrayFormat(d,a)},updateNode:function(a){a&&
|
||||
k(a,d).get(0)&&j.uCanDo(d)&&(i.setNodeName(d,a),i.setNodeTarget(d,a),i.setNodeUrl(d,a),i.setNodeLineIcos(d,a),i.setNodeFontCss(d,a))}};b.treeTools=c;h.setZTreeTools(d,c);b[a]&&b[a].length>0?i.createNodes(d,0,b[a],null,-1):d.async.enable&&d.async.url&&d.async.url!==""&&i.asyncNode(d);return c}};var O=q.fn.zTree,k=j.$,f=O.consts})(jQuery);
|
||||
49
static/zTree3/api/apiCss/zTreeStyleForApi.css
Normal file
@@ -0,0 +1,49 @@
|
||||
/*-------------------------------------
|
||||
zTree Style
|
||||
|
||||
version: 3.0
|
||||
author: Hunter.z
|
||||
email: hunter.z@263.net
|
||||
website: http://code.google.com/p/jquerytree/
|
||||
|
||||
-------------------------------------*/
|
||||
|
||||
.ztree * {padding:0; margin:0; font-size:12px; font-family: Verdana, Arial, Helvetica, AppleGothic, sans-serif}
|
||||
.ztree {margin:0; padding:5px; color:#333}
|
||||
.ztree li{padding:0; margin:0; list-style:none; line-height:14px; text-align:left; white-space:nowrap}
|
||||
.ztree li ul{ margin:0; padding:0 0 0 18px}
|
||||
.ztree li ul.line{ background:url(./img/line_conn.gif) 0 0 repeat-y;}
|
||||
|
||||
.ztree li a {padding:1px 3px 0 0; margin:0; cursor:pointer; color:#333; height:17px; text-decoration:none; vertical-align:top; display: inline-block}
|
||||
.ztree li a:hover {text-decoration:none}
|
||||
.ztree li a.curSelectedNode {padding-top:0px; background-color:#FFE6B0; color:black; height:16px; border:1px #FFB951 solid;}
|
||||
.ztree li a.curSelectedNode_Edit {padding-top:0px; background-color:#FFE6B0; color:black; height:16px; border:1px #FFB951 solid; opacity:0.8; filter:alpha(opacity=80)}
|
||||
.ztree li a.tmpTargetNode_inner {padding-top:0px; background-color:#316AC5; color:white; height:16px; border:1px #316AC5 solid; opacity:0.8; filter:alpha(opacity=80)}
|
||||
.ztree li a.tmpTargetNode_prev {}
|
||||
.ztree li a.tmpTargetNode_next {}
|
||||
.ztree li a input.rename {height:14px; width:80px; padding:0; margin:0;
|
||||
font-size:12px; border:1px #7EC4CC solid; *border:0px}
|
||||
.ztree li span {line-height:16px; margin-right: 2px}
|
||||
.ztree li span.button {line-height:0; margin:0;width:16px; height:16px; display: inline-block; vertical-align:middle;
|
||||
border:0 none; cursor: pointer;
|
||||
background-color:transparent; background-repeat:no-repeat; background-attachment: scroll;
|
||||
background-image:url("./img/zTreeStandard.png"); *background-image:url("./img/zTreeStandard.gif")}
|
||||
|
||||
.ztree li span.button.switch {width:1px; height:18px; visibility: hidden}
|
||||
|
||||
.zTreeDragUL {margin:0; padding:0; position:absolute; background-color:#cfcfcf; border:1px #00B83F dotted; opacity:0.8; filter:alpha(opacity=80)}
|
||||
.zTreeMask {z-index:10000; background-color:#cfcfcf; opacity:0.0; filter:alpha(opacity=0); position:absolute}
|
||||
|
||||
/* level 等级样式*/
|
||||
/*.ztree li button.level0 {
|
||||
display:none;
|
||||
}
|
||||
.ztree li ul.level0 {
|
||||
padding:0;
|
||||
background:none;
|
||||
}*/
|
||||
|
||||
.ztree li span.button.core_ico_docu{margin-right:2px; background-position:-126px 0; vertical-align:top; *vertical-align:middle}
|
||||
.ztree li span.button.check_ico_docu{margin-right:2px; background-position:-126px -16px; vertical-align:top; *vertical-align:middle}
|
||||
.ztree li span.button.edit_ico_docu{margin-right:2px; background-position:-126px -32px; vertical-align:top; *vertical-align:middle}
|
||||
.ztree li span.button.hide_ico_docu{margin-right:2px; background-position:-160px 0; vertical-align:top; *vertical-align:middle}
|
||||
13
static/zTree3/api/cn/fn.zTree._z.html
Normal file
@@ -0,0 +1,13 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>JSON</span><span class="path">$.fn.zTree.</span>_z</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>zTree v3.x 内部的全部方法都可以通过 $.fn.zTree._z 进行调用,开放出来是为了更便于大家开发制作自己的 zTree 插件。 </p>
|
||||
<p class="highlight_red">如无特殊需求请勿使用此对象,以及修改此对象内部的各个函数。</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
28
static/zTree3/api/cn/fn.zTree.destroy.html
Normal file
@@ -0,0 +1,28 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId)</span><span class="path">$.fn.zTree.</span>destroy</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>从 zTree v3.4 开始提供销毁 zTree 的方法。 </p>
|
||||
<p>1、用此方法可以销毁指定 treeId 的 zTree,也可以销毁当前页面全部的 zTree。</p>
|
||||
<p class="highlight_red">2、销毁指定 treeId 的 zTree 也可以使用 zTreeObj.destroy() 方法。</p>
|
||||
<p class="highlight_red">3、重新使用已经被销毁的树,必须要使用 init 方法进行初始化。</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>zTree 的 DOM 容器的 id</p>
|
||||
<p class="highlight_red">省略 treeId,表示销毁当前页面全部的 zTree</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>无</span></h4>
|
||||
<p>目前无任何返回值</p>
|
||||
</div>
|
||||
<h3>function 举例</h3>
|
||||
<h4>1. 销毁 id 为 "treeDemo" 的 zTree</h4>
|
||||
<pre xmlns=""><code>$.fn.zTree.destroy("treeDemo");</code></pre>
|
||||
<h4>2. 销毁全部 的 zTree</h4>
|
||||
<pre xmlns=""><code>$.fn.zTree.destroy();</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
24
static/zTree3/api/cn/fn.zTree.getZTreeObj.html
Normal file
@@ -0,0 +1,24 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId)</span><span class="path">$.fn.zTree.</span>getZTreeObj</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>zTree v3.x 专门提供的根据 treeId 获取 zTree 对象的方法。 </p>
|
||||
<p class="highlight_red">必须在初始化 zTree 以后才可以使用此方法。</p>
|
||||
<p>有了这个方法,用户不再需要自己设定全局变量来保存 zTree 初始化后得到的对象了,而且在所有回调函数中全都会返回 treeId 属性,用户可以随时使用此方法获取需要进行操作的 zTree 对象</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>zTree 的 DOM 容器的 id</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>JSON</span></h4>
|
||||
<p>zTree 对象,提供操作 zTree 的各种方法,对于通过 js 操作 zTree 来说必须通过此对象</p>
|
||||
</div>
|
||||
<h3>function 举例</h3>
|
||||
<h4>1. 获取 id 为 tree 的 zTree 对象</h4>
|
||||
<pre xmlns=""><code>var treeObj = $.fn.zTree.getZTreeObj("tree");</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
74
static/zTree3/api/cn/fn.zTree.init.html
Normal file
@@ -0,0 +1,74 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(obj, zSetting, zNodes)</span><span class="path">$.fn.zTree.</span>init</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>zTree 初始化方法,创建 zTree 必须使用此方法</p>
|
||||
<p>1、页面需要进行 W3C 申明,例如:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">。</p>
|
||||
<p>2、需要首先加载 jquery-1.4.2.js 或其他更高版本的 jQuery 。</p>
|
||||
<p>3、需要加载 jquery-ztree.core-3.0.js,如果需要用到 编辑功能 或 checkbox / radio 还需要分别加载 jquery-ztree.exedit-3.0.js 和 jquery-ztree.excheck-3.0.js 。</p>
|
||||
<p>4、需要加载 zTreeStyle.css 以及 zTreeStyle 目录下的 img 文件。</p>
|
||||
<p>5、如果需要使用自定义图标请参考相应的Demo。</p>
|
||||
<p>6、请注意设置 zTree 的容器样式 class="ztree",其中 "ztree" 这个 className,可以根据需要随意修改,别忘了修改 css 中对应名字就是了,对于容器如果需要增加其他特殊样式,可根据自己的需要进行修改。</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>obj</b><span>jQuery Object</span></h4>
|
||||
<p>用于展现 zTree 的 DOM 容器</p>
|
||||
<h4 class="topLine"><b>zSetting</b><span>JSON</span></h4>
|
||||
<p>zTree 的配置数据,具体请参考 “setting 配置详解”中的各个属性详细说明</p>
|
||||
<h4 class="topLine"><b>zNodes</b><span>Array(JSON) / JSON</span></h4>
|
||||
<p>zTree 的节点数据,具体请参考 “treeNode 节点数据详解”中的各个属性详细说明</p>
|
||||
<p class="highlight_red">1、v3.x 支持单独添加一个节点,即如果只新增一个节点,不用必须包在数组中</p>
|
||||
<p class="highlight_red">2、如果需要异步加载根节点,可以设置为 null 或 [ ]</p>
|
||||
<p class="highlight_red">3、使用简单数据模式,请参考 setting.data.simpleData 内的属性说明</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>JSON</span></h4>
|
||||
<p>zTree 对象,提供操作 zTree 的各种方法,对于通过 js 操作 zTree 来说必须通过此对象</p>
|
||||
<p class="highlight_red">如果不需要自行设定全局变量保存,可以利用 $.fn.zTree.getZTreeObj 方法随时获取</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 简单创建 zTree 演示</h4>
|
||||
<pre xmlns=""><code><!DOCTYPE html>
|
||||
<HTML>
|
||||
<HEAD>
|
||||
<TITLE> ZTREE DEMO </TITLE>
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||
<link rel="stylesheet" href="zTreeStyle/zTreeStyle.css" type="text/css">
|
||||
<script type="text/javascript" src="jquery-1.4.2.js"></script>
|
||||
<script type="text/javascript" src="jquery.ztree.core.js"></script>
|
||||
<!--
|
||||
<script type="text/javascript" src="jquery.ztree.excheck.js"></script>
|
||||
<script type="text/javascript" src="jquery.ztree.exedit.js"></script>
|
||||
-->
|
||||
<SCRIPT type="text/javascript" >
|
||||
var zTreeObj,
|
||||
setting = {
|
||||
view: {
|
||||
selectedMulti: false
|
||||
}
|
||||
},
|
||||
zTreeNodes = [
|
||||
{"name":"网站导航", open:true, children: [
|
||||
{ "name":"google", "url":"http://g.cn", "target":"_blank"},
|
||||
{ "name":"baidu", "url":"http://baidu.com", "target":"_blank"},
|
||||
{ "name":"sina", "url":"http://www.sina.com.cn", "target":"_blank"}
|
||||
]
|
||||
}
|
||||
];
|
||||
|
||||
$(document).ready(function(){
|
||||
zTreeObj = $.fn.zTree.init($("#tree"), setting, zTreeNodes);
|
||||
|
||||
});
|
||||
</SCRIPT>
|
||||
</HEAD>
|
||||
|
||||
<BODY>
|
||||
<ul id="tree" class="ztree" style="width:230px; overflow:auto;"></ul>
|
||||
</BODY>
|
||||
</HTML></code></pre>
|
||||
</div>
|
||||
</div>
|
||||
39
static/zTree3/api/cn/setting.async.autoParam.html
Normal file
@@ -0,0 +1,39 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Array(String)</span><span class="path">setting.async.</span>autoParam</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>异步加载时需要自动提交父节点属性的参数。<span class="highlight_red">[setting.async.enable = true 时生效]</span></p>
|
||||
<p>默认值:[ ]</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Array(String) 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p>1、将需要作为参数提交的属性名称,制作成 Array 即可,例如:["id", "name"]</p>
|
||||
<p>2、可以设置提交时的参数名称,例如 server 只接受 zId : ["id=zId"]</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置 id 属性为自动提交的参数</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
async: {
|
||||
enable: true,
|
||||
url: "http://host/getNode.php",
|
||||
autoParam: ["id"]
|
||||
}
|
||||
};
|
||||
假设 异步加载 父节点(node = {id:1, name:"test"}) 的子节点时,将提交参数 id=1
|
||||
......</code></pre>
|
||||
<h4>2. 设置 id 属性作为 zId 成为自动提交的参数</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
async: {
|
||||
enable: true,
|
||||
url: "http://host/getNode.php",
|
||||
autoParam: ["id=zId"]
|
||||
}
|
||||
};
|
||||
假设 对父节点 node = {id:1, name:"test"},进行异步加载时,将提交参数 zId=1
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
29
static/zTree3/api/cn/setting.async.contentType.html
Normal file
@@ -0,0 +1,29 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String</span><span class="path">setting.async.</span>contentType</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>Ajax 提交参数的数据类型。<span class="highlight_red">[setting.async.enable = true 时生效]</span></p>
|
||||
<p>默认值:"application/x-www-form-urlencoded"</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>String 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> contentType = "application/x-www-form-urlencoded" 可以满足绝大部分请求,按照标准的 Form 格式提交参数</p>
|
||||
<p> contentType = "application/json" 可以满足 .Net 的编程需要,按照 JSON 格式提交参数</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置 Ajax 提交参数的数据类型为 JSON 格式</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
async: {
|
||||
enable: true,
|
||||
contentType: "application/json",
|
||||
url: "http://host/getNode.php",
|
||||
autoParam: ["id", "name"]
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
45
static/zTree3/api/cn/setting.async.dataFilter.html
Normal file
@@ -0,0 +1,45 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, parentNode, responseData)</span><span class="path">setting.async.</span>dataFilter</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于对 Ajax 返回数据进行预处理的函数。<span class="highlight_red">[setting.async.enable = true 时生效]</span></p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>parentNode</b><span>JSON</span></h4>
|
||||
<p>进行异步加载的父节点 JSON 数据对象</p>
|
||||
<p class="highlight_red">对根进行异步加载时,parentNode = null</p>
|
||||
<h4 class="topLine"><b>responseData</b><span>Array(JSON) / JSON / String</span></h4>
|
||||
<p>异步加载获取到的数据转换后的 Array(JSON) / JSON / String 数据对象</p>
|
||||
<p class="highlight_red">v3.4开始 支持 XML 数据格式的 String</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Array(JSON) / JSON</span></h4>
|
||||
<p>返回值是 zTree 支持的JSON 数据结构即可。</p>
|
||||
<p class="highlight_red">v3.x 支持单个 JSON 节点数据进行加载</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 修改异步获取到的节点name属性</h4>
|
||||
<pre xmlns=""><code>function ajaxDataFilter(treeId, parentNode, responseData) {
|
||||
if (responseData) {
|
||||
for(var i =0; i < responseData.length; i++) {
|
||||
responseData[i].name += "_filter";
|
||||
}
|
||||
}
|
||||
return responseData;
|
||||
};
|
||||
var setting = {
|
||||
async: {
|
||||
enable: true,
|
||||
url: "http://host/getNode.php",
|
||||
dataFilter: ajaxDataFilter
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
29
static/zTree3/api/cn/setting.async.dataType.html
Normal file
@@ -0,0 +1,29 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String</span><span class="path">setting.async.</span>dataType</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>Ajax 获取的数据类型。<span class="highlight_red">[setting.async.enable = true 时生效]</span></p>
|
||||
<p>默认值:"text"</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>String 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> dataType = "text" 可以满足绝大部分请求</p>
|
||||
<p class="highlight_red">其余 dataType 类型请参考 jQuery ajax 中的 dataType 参数</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置 Ajax 获取的数据类型为 纯文本</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
async: {
|
||||
enable: true,
|
||||
dataType: "text",
|
||||
url: "http://host/getNode.php",
|
||||
autoParam: ["id", "name"]
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
30
static/zTree3/api/cn/setting.async.enable.html
Normal file
@@ -0,0 +1,30 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.async.</span>enable</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>设置 zTree 是否开启异步加载模式</p>
|
||||
<p>默认值:false</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true 表示 开启 异步加载模式</p>
|
||||
<p> false 表示 关闭 异步加载模式</p>
|
||||
<p class="highlight_red">如果设置为 true,请务必设置 setting.async 内的其它参数。</p>
|
||||
<p class="highlight_red">如果需要根节点也异步加载,初始化时 treeNodes 参数设置为 null 即可。</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 需要开启异步加载模式</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
async: {
|
||||
enable: true,
|
||||
url: "http://host/getNode.php",
|
||||
autoParam: ["id", "name"]
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
40
static/zTree3/api/cn/setting.async.otherParam.html
Normal file
@@ -0,0 +1,40 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Array(String) / JSON</span><span class="path">setting.async.</span>otherParam</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>Ajax 请求提交的静态参数键值对。<span class="highlight_red">[setting.async.enable = true 时生效]</span></p>
|
||||
<p>默认值:[ ]</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Array(String) 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p>可以为空[ ],如果有 key,则必须存在 value。 例如:[key, value]</p>
|
||||
</div>
|
||||
<h3>JSON 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p>直接用 JSON 格式制作键值对,例如:{ key1:value1, key2:value2 }</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置 Array(String) 格式的参数</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
async: {
|
||||
enable: true,
|
||||
url: "http://host/getNode.php",
|
||||
otherParam: ["id", "1", "name", "test"]
|
||||
}
|
||||
};
|
||||
进行异步加载时,将提交参数 id=1&name=test</code></pre>
|
||||
<h4>2. 设置 JSON 格式的参数</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
async: {
|
||||
enable: true,
|
||||
url: "http://host/getNode.php",
|
||||
otherParam: { "id":"1", "name":"test"}
|
||||
}
|
||||
};
|
||||
进行异步加载时,将提交参数 id=1&name=test</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
30
static/zTree3/api/cn/setting.async.type.html
Normal file
@@ -0,0 +1,30 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String</span><span class="path">setting.async.</span>type</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>Ajax 的 http 请求模式。<span class="highlight_red">[setting.async.enable = true 时生效]</span></p>
|
||||
<p>默认值:"post"</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>String 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> type = "post" 表示异步加载采用 post 方法请求</p>
|
||||
<p> type = "get" 表示异步加载采用 get 方法请求</p>
|
||||
<p class="highlight_red">对应于 jQuery ajax 中的 type 参数</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置使用 get 方式请求数据</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
async: {
|
||||
enable: true,
|
||||
type: "get",
|
||||
url: "http://host/getNode.php",
|
||||
autoParam: ["id", "name"]
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
50
static/zTree3/api/cn/setting.async.url.html
Normal file
@@ -0,0 +1,50 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String / Function(treeId, treeNode)</span><span class="path">setting.async.</span>url</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>Ajax 获取数据的 URL 地址。<span class="highlight_red">[setting.async.enable = true 时生效]</span></p>
|
||||
<p>默认值:""</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>String 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p>设置固定的异步加载 url 字符串,请注意地址的路径,确保页面能正常加载</p>
|
||||
<p class="highlight_red">url 内也可以带参数,这些参数就只能是通过 get 方式提交了,并且请注意进行转码</p>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>需要异步加载子节点的的父节点 JSON 数据对象</p>
|
||||
<p class="highlight_red">针对根进行异步加载时,treeNode = null</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>String</span></h4>
|
||||
<p>返回值同 String 格式的数据</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 设置异步获取节点的 URL 为 nodes.php</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
async: {
|
||||
enable: true,
|
||||
url: "nodes.php",
|
||||
autoParam: ["id", "name"]
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
<h4>2. 设置异步获取节点的 URL 为 function 动态获取</h4>
|
||||
<pre xmlns=""><code>function getAsyncUrl(treeId, treeNode) {
|
||||
return treeNode.isParent ? "nodes1.php" : "nodes2.php";
|
||||
};
|
||||
var setting = {
|
||||
async: {
|
||||
enable: true,
|
||||
url: getAsyncUrl,
|
||||
autoParam: ["id", "name"]
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
35
static/zTree3/api/cn/setting.callback.beforeAsync.html
Normal file
@@ -0,0 +1,35 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode)</span><span class="path">setting.callback.</span>beforeAsync</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获异步加载之前的事件回调函数,zTree 根据返回值确定是否允许进行异步加载</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>进行异步加载的父节点 JSON 数据对象</p>
|
||||
<p class="highlight_red">针对根进行异步加载时,treeNode = null</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,zTree 将不进行异步加载,也无法触发 onAsyncSuccess / onAsyncError 事件回调函数</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止 id 为 1 的父节点进行异步加载操作</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeAsync(treeId, treeNode) {
|
||||
return (treeNode.id !== 1);
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
beforeAsync: zTreeBeforeAsync
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
34
static/zTree3/api/cn/setting.callback.beforeCheck.html
Normal file
@@ -0,0 +1,34 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode)</span><span class="path">setting.callback.</span>beforeCheck</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.excheck</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获 勾选 或 取消勾选 之前的事件回调函数,并且根据返回值确定是否允许 勾选 或 取消勾选 </p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>进行 勾选 或 取消勾选 的节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,将不会改变勾选状态,并且无法触发 onCheck 事件回调函数</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止所有勾选操作,保持初始化的勾选状态</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeCheck(treeId, treeNode) {
|
||||
return false;
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
beforeCheck: zTreeBeforeCheck
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
49
static/zTree3/api/cn/setting.callback.beforeClick.html
Normal file
@@ -0,0 +1,49 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode, clickFlag)</span><span class="path">setting.callback.</span>beforeClick</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获单击节点之前的事件回调函数,并且根据返回值确定是否允许单击操作</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>被单击的节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>clickFlag</b><span>Number</span></h4>
|
||||
<p>节点被点击后的选中操作类型,详细看下表</p>
|
||||
<table width="100%" border="0" cellspacing="1" cellpadding="0">
|
||||
<thead><tr><td>clickFlag</td><td title="是否允许多点选中">selectedMulti</td><td title="是否按下 Ctrl 或 Cmd 键">autoCancelSelected<br/>&&<br/>event.ctrlKey / metaKey</td><td title="节点当前选择状态">isSelected</td><td>选中操作</td></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>1</td><td>true</td><td>false</td><td>false</td><td>普通选中</td></tr>
|
||||
<tr><td>1</td><td>true</td><td>false</td><td>true</td><td>普通选中</td></tr>
|
||||
<tr><td>2</td><td>true</td><td>true</td><td>false</td><td>追加选中</td></tr>
|
||||
<tr><td>0</td><td>true</td><td>true</td><td>true</td><td>取消选中</td></tr>
|
||||
<tr><td>1</td><td>false</td><td>false</td><td>false</td><td>普通选中</td></tr>
|
||||
<tr><td>1</td><td>false</td><td>false</td><td>true</td><td>普通选中</td></tr>
|
||||
<tr><td>1</td><td>false</td><td>true</td><td>false</td><td>普通选中</td></tr>
|
||||
<tr><td>0</td><td>false</td><td>true</td><td>true</td><td>取消选中</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,zTree 将不会选中节点,也无法触发 onClick 事件回调函数</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止节点被选中</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeClick(treeId, treeNode, clickFlag) {
|
||||
return (treeNode.id !== 1);
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
beforeClick: zTreeBeforeClick
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
34
static/zTree3/api/cn/setting.callback.beforeCollapse.html
Normal file
@@ -0,0 +1,34 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode)</span><span class="path">setting.callback.</span>beforeCollapse</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获父节点折叠之前的事件回调函数,并且根据返回值确定是否允许折叠操作</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>要折叠的父节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,zTree 将不会折叠节点,也无法触发 onCollapse 事件回调函数</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止所有已展开的父节点折叠</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeCollapse(treeId, treeNode) {
|
||||
return false;
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
beforeCollapse: zTreeBeforeCollapse
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
36
static/zTree3/api/cn/setting.callback.beforeDblClick.html
Normal file
@@ -0,0 +1,36 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode)</span><span class="path">setting.callback.</span>beforeDblClick</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获 zTree 上鼠标双击之前的事件回调函数,并且根据返回值确定触发 onDblClick 事件回调函数</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>鼠标双击时所在节点的 JSON 数据对象</p>
|
||||
<p class="highlight_red">如果不在节点上,则返回 null</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,将仅仅无法触发 onDblClick 事件回调函数,对其他操作无任何影响</p>
|
||||
<p class="highlight_red">此事件回调函数对双击节点展开功能无任何影响,如果需要设置请参考 setting.view.dblClickExpand 属性</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止 onDblClick 事件</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeDblClick(treeId, treeNode) {
|
||||
return false;
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
beforeDblClick: zTreeBeforeDblClick
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
39
static/zTree3/api/cn/setting.callback.beforeDrag.html
Normal file
@@ -0,0 +1,39 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNodes)</span><span class="path">setting.callback.</span>beforeDrag</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点被拖拽之前的事件回调函数,并且根据返回值确定是否允许开启拖拽操作</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>被拖拽的节点 treeNodes 所在 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNodes</b><span>Array(JSON)</span></h4>
|
||||
<p>要被拖拽的节点 JSON 数据集合</p>
|
||||
<p class="highlight_red">v3.x 允许多个同级节点同时被拖拽,因此将此参数修改为 Array(JSON)</p>
|
||||
<p class="highlight_red">如果拖拽时多个被选择的节点不是同级关系,则只能拖拽鼠标当前所在位置的节点</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,zTree 将终止拖拽,也无法触发 onDrag / beforeDrop / onDrop 事件回调函数</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止全部拖拽操作</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeDrag(treeId, treeNodes) {
|
||||
return false;
|
||||
};
|
||||
var setting = {
|
||||
edit: {
|
||||
enable: true
|
||||
},
|
||||
callback: {
|
||||
beforeDrag: zTreeBeforeDrag
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
37
static/zTree3/api/cn/setting.callback.beforeDragOpen.html
Normal file
@@ -0,0 +1,37 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode)</span><span class="path">setting.callback.</span>beforeDragOpen</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获拖拽节点移动到折叠状态的父节点后,即将自动展开该父节点之前的事件回调函数,并且根据返回值确定是否允许自动展开操作</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>需要被展开的父节点 treeNode 所在 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>要被自动展开的父节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,zTree 将无法进行自动展开操作</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止全部拖拽时的自动展开操作</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeDragOpen(treeId, treeNode) {
|
||||
return false;
|
||||
};
|
||||
var setting = {
|
||||
edit: {
|
||||
enable: true
|
||||
},
|
||||
callback: {
|
||||
beforeDragOpen: zTreeBeforeDragOpen
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
48
static/zTree3/api/cn/setting.callback.beforeDrop.html
Normal file
@@ -0,0 +1,48 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNodes, targetNode, moveType, isCopy)</span><span class="path">setting.callback.</span>beforeDrop</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点拖拽操作结束之前的事件回调函数,并且根据返回值确定是否允许此拖拽操作</p>
|
||||
<p>默认值:null</p>
|
||||
<p class="highlight_red">如未拖拽到有效位置,则不触发此回调函数,直接将节点恢复原位置</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>目标节点 targetNode 所在 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNodes</b><span>Array(JSON)</span></h4>
|
||||
<p>被拖拽的节点 JSON 数据集合</p>
|
||||
<p class="highlight_red">无论拖拽操作为 复制 还是 移动,treeNodes 都是当前被拖拽节点的数据集合。</p>
|
||||
<h4 class="topLine"><b>targetNode</b><span>JSON</span></h4>
|
||||
<p>treeNodes 被拖拽放开的目标节点 JSON 数据对象。</p>
|
||||
<p class="highlight_red">如果拖拽成为根节点,则 targetNode = null</p>
|
||||
<h4 class="topLine"><b>moveType</b><span>String</span></h4>
|
||||
<p>指定移动到目标节点的相对位置</p>
|
||||
<p class="highlight_red">"inner":成为子节点,"prev":成为同级前一个节点,"next":成为同级后一个节点</p>
|
||||
<h4 class="topLine"><b>isCopy</b><span>Boolean</span></h4>
|
||||
<p>拖拽节点操作是 复制 或 移动</p>
|
||||
<p class="highlight_red">true:复制;false:移动</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,zTree 将恢复被拖拽的节点,也无法触发 onDrop 事件回调函数</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止将节点拖拽成为根节点</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeDrop(treeId, treeNodes, targetNode, moveType) {
|
||||
return !(targetNode == null || (moveType != "inner" && !targetNode.parentTId));
|
||||
};
|
||||
var setting = {
|
||||
edit: {
|
||||
enable: true
|
||||
},
|
||||
callback: {
|
||||
beforeDrop: zTreeBeforeDrop
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
38
static/zTree3/api/cn/setting.callback.beforeEditName.html
Normal file
@@ -0,0 +1,38 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode)</span><span class="path">setting.callback.</span>beforeEditName</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点编辑按钮的 click 事件,并且根据返回值确定是否允许进入名称编辑状态</p>
|
||||
<p class="highlight_red">此事件回调函数最主要是用于捕获编辑按钮的点击事件,然后触发自定义的编辑界面操作。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>将要进入编辑名称状态的节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,节点将无法进入 zTree 默认的编辑名称状态</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止修改父节点的名称</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeEditName(treeId, treeNode) {
|
||||
return !treeNode.isParent;
|
||||
}
|
||||
var setting = {
|
||||
edit: {
|
||||
enable: true
|
||||
},
|
||||
callback: {
|
||||
beforeEditName: zTreeBeforeEditName
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
34
static/zTree3/api/cn/setting.callback.beforeExpand.html
Normal file
@@ -0,0 +1,34 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode)</span><span class="path">setting.callback.</span>beforeExpand</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获父节点展开之前的事件回调函数,并且根据返回值确定是否允许展开操作</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>要展开的父节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,zTree 将不会展开节点,也无法触发 onExpand 事件回调函数</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止所有已折叠的父节点展开</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeExpand(treeId, treeNode) {
|
||||
return false;
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
beforeExpand: zTreeBeforeExpand
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
35
static/zTree3/api/cn/setting.callback.beforeMouseDown.html
Normal file
@@ -0,0 +1,35 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode)</span><span class="path">setting.callback.</span>beforeMouseDown</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获 zTree 上鼠标按键按下之前的事件回调函数,并且根据返回值确定触发 onMouseDown 事件回调函数</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>鼠标按键按下时所在节点的 JSON 数据对象</p>
|
||||
<p class="highlight_red">如果不在节点上,则返回 null</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,将仅仅无法触发 onMouseDown 事件回调函数,对其他操作无任何影响</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止 onMouseDown 事件</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeMouseDown(treeId, treeNode) {
|
||||
return false;
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
beforeMouseDown: zTreeBeforeMouseDown
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
35
static/zTree3/api/cn/setting.callback.beforeMouseUp.html
Normal file
@@ -0,0 +1,35 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode)</span><span class="path">setting.callback.</span>beforeMouseUp</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获 zTree 上鼠标按键松开之前的事件回调函数,并且根据返回值确定触发 onMouseUp 事件回调函数</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>鼠标按键松开时所在节点的 JSON 数据对象</p>
|
||||
<p class="highlight_red">如果不在节点上,则返回 null</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,将仅仅无法触发 onMouseUp 事件回调函数,对其他操作无任何影响</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止 onMouseUp 事件</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeMouseUp(treeId, treeNode) {
|
||||
return false;
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
beforeMouseUp: zTreeBeforeMouseUp
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
37
static/zTree3/api/cn/setting.callback.beforeRemove.html
Normal file
@@ -0,0 +1,37 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode)</span><span class="path">setting.callback.</span>beforeRemove</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点被删除之前的事件回调函数,并且根据返回值确定是否允许删除操作</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>将要删除的节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,zTree 将不删除节点,也无法触发 onRemove 事件回调函数</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止全部删除操作</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeRemove(treeId, treeNode) {
|
||||
return false;
|
||||
}
|
||||
var setting = {
|
||||
edit: {
|
||||
enable: true
|
||||
},
|
||||
callback: {
|
||||
beforeRemove: zTreeBeforeRemove
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
46
static/zTree3/api/cn/setting.callback.beforeRename.html
Normal file
@@ -0,0 +1,46 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode, newName, isCancel)</span><span class="path">setting.callback.</span>beforeRename</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点编辑名称结束(Input 失去焦点 或 按下 Enter 键)之后,更新节点名称数据之前的事件回调函数,并且根据返回值确定是否允许更改名称的操作</p>
|
||||
<p class="highlight_red">节点进入编辑名称状态后,按 ESC 键可以放弃当前修改,恢复原名称,取消编辑名称状态</p>
|
||||
<p class="highlight_red">从 v3.5.13 开始,取消编辑状态也会触发此回调,根据 isCancel 参数判断</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>将要更改名称的节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>newName</b><span>String</span></h4>
|
||||
<p>修改后的新名称</p>
|
||||
<h4 class="topLine"><b>isCancel</b><span>Boolean</span></h4>
|
||||
<p>是否取消操作 (v3.5.13+)</p>
|
||||
<p class="highlight_red">isCancel = true 表示取消编辑操作(按下 ESC 或 使用 cancelEditName 方法)</p>
|
||||
<p class="highlight_red">isCancel = false 表示确认修改操作</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,zTree 将保持名称编辑状态,无法触发 onRename 事件回调函数,并且会导致屏蔽其它事件,直到修改名称使得 beforeRename 返回 true</p>
|
||||
<p class="highlight_red">如果返回 false,不会让 input 输入框获取焦点,避免由于警告信息而导致反复触发 beforeRename。 请在关闭提示警告信息后,利用 editName 方法让 input 重新获取焦点。</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止修改的名称的长度小于 5</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeRename(treeId, treeNode, newName, isCancel) {
|
||||
return newName.length > 5;
|
||||
}
|
||||
var setting = {
|
||||
edit: {
|
||||
enable: true
|
||||
},
|
||||
callback: {
|
||||
beforeRename: zTreeBeforeRename
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
35
static/zTree3/api/cn/setting.callback.beforeRightClick.html
Normal file
@@ -0,0 +1,35 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(treeId, treeNode)</span><span class="path">setting.callback.</span>beforeRightClick</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获 zTree 上鼠标右键点击之前的事件回调函数,并且根据返回值确定触发 onRightClick 事件回调函数</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>鼠标右键点击时所在节点的 JSON 数据对象</p>
|
||||
<p class="highlight_red">如果不在节点上,则返回 null</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值是 true / false</p>
|
||||
<p class="highlight_red">如果返回 false,将仅仅无法触发 onRightClick 事件回调函数,对其他操作无任何影响</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止 onRightClick 事件</h4>
|
||||
<pre xmlns=""><code>function zTreeBeforeRightClick(treeId, treeNode) {
|
||||
return false;
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
beforeRightClick: zTreeBeforeRightClick
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
42
static/zTree3/api/cn/setting.callback.onAsyncError.html
Normal file
@@ -0,0 +1,42 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span class="path">setting.callback.</span>onAsyncError</h2>
|
||||
<h2><span>Function(event, treeId, treeNode, XMLHttpRequest, textStatus, errorThrown)</span> </h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获异步加载出现异常错误的事件回调函数</p>
|
||||
<p class="highlight_red">如果设置了 setting.callback.beforeAsync 方法,且返回 false,将无法触发 onAsyncSuccess / onAsyncError 事件回调函数。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>进行异步加载的父节点 JSON 数据对象</p>
|
||||
<p class="highlight_red">针对根进行异步加载时,treeNode = null</p>
|
||||
<h4 class="topLine"><b>XMLHttpRequest</b><span>String</span></h4>
|
||||
<p>标准 XMLHttpRequest 对象,请参考 JQuery API 文档。</p>
|
||||
<h4 class="topLine"><b>textStatus</b><span>String</span></h4>
|
||||
<p>请求状态:success,error,请参考 JQuery API 文档。</p>
|
||||
<h4 class="topLine"><b>errorThrown</b><span>String</span></h4>
|
||||
<p>errorThrown 只有当异常发生时才会被传递,请参考 JQuery API 文档。</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 异步加载出现异常后,弹出错误信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnAsyncError(event, treeId, treeNode, XMLHttpRequest, textStatus, errorThrown) {
|
||||
alert(XMLHttpRequest);
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onAsyncError: zTreeOnAsyncError
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
38
static/zTree3/api/cn/setting.callback.onAsyncSuccess.html
Normal file
@@ -0,0 +1,38 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNode, msg)</span><span class="path">setting.callback.</span>onAsyncSuccess</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获异步加载正常结束的事件回调函数</p>
|
||||
<p class="highlight_red">如果设置了 setting.callback.beforeAsync 方法,且返回 false,将无法触发 onAsyncSuccess / onAsyncError 事件回调函数。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>进行异步加载的父节点 JSON 数据对象</p>
|
||||
<p class="highlight_red">针对根进行异步加载时,treeNode = null</p>
|
||||
<h4 class="topLine"><b>msg</b><span>String / Object</span></h4>
|
||||
<p>异步获取的节点数据字符串,主要便于用户调试使用。</p>
|
||||
<p class="highlight_red">实际数据类型会受 setting.async.dataType 的设置影响,请参考 JQuery API 文档。</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 异步加载成功后,弹出提示信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnAsyncSuccess(event, treeId, treeNode, msg) {
|
||||
alert(msg);
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onAsyncSuccess: zTreeOnAsyncSuccess
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
34
static/zTree3/api/cn/setting.callback.onCheck.html
Normal file
@@ -0,0 +1,34 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNode)</span><span class="path">setting.callback.</span>onCheck</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.excheck</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获 checkbox / radio 被勾选 或 取消勾选的事件回调函数</p>
|
||||
<p class="highlight_red">如果设置了 setting.callback.beforeCheck 方法,且返回 false,将无法触发 onCheck 事件回调函数。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>被勾选 或 取消勾选的节点 JSON 数据对象</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 每次点击 checkbox 或 radio 后, 弹出该节点的 tId、name 以及当前勾选状态的信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnCheck(event, treeId, treeNode) {
|
||||
alert(treeNode.tId + ", " + treeNode.name + "," + treeNode.checked);
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onCheck: zTreeOnCheck
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
49
static/zTree3/api/cn/setting.callback.onClick.html
Normal file
@@ -0,0 +1,49 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNode, clickFlag)</span><span class="path">setting.callback.</span>onClick</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点被点击的事件回调函数</p>
|
||||
<p class="highlight_red">如果设置了 setting.callback.beforeClick 方法,且返回 false,将无法触发 onClick 事件回调函数。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>被点击的节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>clickFlag</b><span>Number</span></h4>
|
||||
<p>节点被点击后的选中操作类型,详细看下表</p>
|
||||
<table width="100%" border="0" cellspacing="1" cellpadding="0">
|
||||
<thead><tr><td>clickFlag</td><td title="是否允许多点选中">selectedMulti</td><td title="是否按下 Ctrl 或 Cmd 键">autoCancelSelected<br/>&&<br/>event.ctrlKey / metaKey</td><td title="节点当前选择状态">isSelected</td><td>选中操作</td></tr></thead>
|
||||
<tbody>
|
||||
<tr><td>1</td><td>true</td><td>false</td><td>false</td><td>普通选中</td></tr>
|
||||
<tr><td>1</td><td>true</td><td>false</td><td>true</td><td>普通选中</td></tr>
|
||||
<tr><td>2</td><td>true</td><td>true</td><td>false</td><td>追加选中</td></tr>
|
||||
<tr><td>0</td><td>true</td><td>true</td><td>true</td><td>取消选中</td></tr>
|
||||
<tr><td>1</td><td>false</td><td>false</td><td>false</td><td>普通选中</td></tr>
|
||||
<tr><td>1</td><td>false</td><td>false</td><td>true</td><td>普通选中</td></tr>
|
||||
<tr><td>1</td><td>false</td><td>true</td><td>false</td><td>普通选中</td></tr>
|
||||
<tr><td>0</td><td>false</td><td>true</td><td>true</td><td>取消选中</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 每次点击节点后, 弹出该节点的 tId、name 的信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnClick(event, treeId, treeNode) {
|
||||
alert(treeNode.tId + ", " + treeNode.name);
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onClick: zTreeOnClick
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
34
static/zTree3/api/cn/setting.callback.onCollapse.html
Normal file
@@ -0,0 +1,34 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNode)</span><span class="path">setting.callback.</span>onCollapse</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点被折叠的事件回调函数</p>
|
||||
<p class="highlight_red">如果设置了 setting.callback.beforeCollapse 方法,且返回 false,将无法触发 onCollapse 事件回调函数。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>被折叠的节点 JSON 数据对象</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 每次折叠节点后, 弹出该节点的 tId、name 的信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnCollapse(event, treeId, treeNode) {
|
||||
alert(treeNode.tId + ", " + treeNode.name);
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onCollapse: zTreeOnCollapse
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
35
static/zTree3/api/cn/setting.callback.onDblClick.html
Normal file
@@ -0,0 +1,35 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNode)</span><span class="path">setting.callback.</span>onDblClick</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获 zTree 上鼠标双击之后的事件回调函数</p>
|
||||
<p class="highlight_red">如果设置了 setting.callback.beforeDblClick 方法,且返回 false,将无法触发 onDblClick 事件回调函数。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>鼠标双击时所在节点的 JSON 数据对象</p>
|
||||
<p class="highlight_red">如果不在节点上,则返回 null</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 每次鼠标双击后, 弹出鼠标所在节点的 tId、name 的信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnDblClick(event, treeId, treeNode) {
|
||||
alert(treeNode ? treeNode.tId + ", " + treeNode.name : "isRoot");
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onDblClick: zTreeOnDblClick
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
34
static/zTree3/api/cn/setting.callback.onDrag.html
Normal file
@@ -0,0 +1,34 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNodes)</span><span class="path">setting.callback.</span>onDrag</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点被拖拽的事件回调函数</p>
|
||||
<p class="highlight_red">如果设置了 setting.callback.beforeDrag 方法,且返回 false,将无法触发 onDragMove 和 onDrag 事件回调函数。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>被拖拽的节点 treeNodes 所在 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNodes</b><span>Array(JSON)</span></h4>
|
||||
<p>要被拖拽的节点 JSON 数据集合</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 每次开始进行拖拽节点后, 弹出被拖拽节点的个数信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnDrag(event, treeId, treeNodes) {
|
||||
alert(treeNodes.length);
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onDrag: zTreeOnDrag
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
34
static/zTree3/api/cn/setting.callback.onDragMove.html
Normal file
@@ -0,0 +1,34 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNodes)</span><span class="path">setting.callback.</span>onDragMove</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点被拖拽过程中移动的事件回调函数</p>
|
||||
<p class="highlight_red">主要用于捕获 zTree 节点拖拽到的 DOM,从而操作对应的 DOM。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>被拖拽的节点 treeNodes 所在 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNodes</b><span>Array(JSON)</span></h4>
|
||||
<p>要被拖拽的节点 JSON 数据集合</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 拖拽节点时,随时输出 当前拖拽到的目标 DOM</h4>
|
||||
<pre xmlns=""><code>function zTreeOnDragMove(event, treeId, treeNodes) {
|
||||
console.log(event.target);
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onDragMove: zTreeOnDragMove
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
46
static/zTree3/api/cn/setting.callback.onDrop.html
Normal file
@@ -0,0 +1,46 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNodes, targetNode, moveType, isCopy)</span><span class="path">setting.callback.</span>onDrop</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点拖拽操作结束的事件回调函数</p>
|
||||
<p class="highlight_red">如果设置了 setting.callback.beforeDrop 方法,且返回 false,将无法触发 onDrop 事件回调函数。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>目标节点 targetNode 所在 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNodes</b><span>Array(JSON)</span></h4>
|
||||
<p>被拖拽的节点 JSON 数据集合</p>
|
||||
<p class="highlight_red">如果拖拽操作为 移动,treeNodes 是当前被拖拽节点的数据集合。</p>
|
||||
<p class="highlight_red">如果拖拽操作为 复制,treeNodes 是复制后 clone 得到的新节点数据。</p>
|
||||
<h4 class="topLine"><b>targetNode</b><span>JSON</span></h4>
|
||||
<p>成为 treeNodes 拖拽结束的目标节点 JSON 数据对象。</p>
|
||||
<p class="highlight_red">如果拖拽成为根节点,则 targetNode = null</p>
|
||||
<h4 class="topLine"><b>moveType</b><span>String</span></h4>
|
||||
<p>指定移动到目标节点的相对位置</p>
|
||||
<p class="highlight_red">"inner":成为子节点,"prev":成为同级前一个节点,"next":成为同级后一个节点</p>
|
||||
<p class="highlight_red">如果 moveType = null,表明拖拽无效</p>
|
||||
<h4 class="topLine"><b>isCopy</b><span>Boolean</span></h4>
|
||||
<p>拖拽节点操作是 复制 或 移动</p>
|
||||
<p class="highlight_red">true:复制;false:移动</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 每次拖拽操作结束后, 弹出该被拖拽节点的个数以及目标节点的 tId、name 的信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnDrop(event, treeId, treeNodes, targetNode, moveType) {
|
||||
alert(treeNodes.length + "," + (targetNode ? (targetNode.tId + ", " + targetNode.name) : "isRoot" ));
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onDrop: zTreeOnDrop
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
34
static/zTree3/api/cn/setting.callback.onExpand.html
Normal file
@@ -0,0 +1,34 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNode)</span><span class="path">setting.callback.</span>onExpand</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点被展开的事件回调函数</p>
|
||||
<p class="highlight_red">如果设置了 setting.callback.beforeExpand 方法,且返回 false,将无法触发 onExpand 事件回调函数。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>被展开的节点 JSON 数据对象</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 每次展开节点后, 弹出该节点的 tId、name 的信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnExpand(event, treeId, treeNode) {
|
||||
alert(treeNode.tId + ", " + treeNode.name);
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onExpand: zTreeOnExpand
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
35
static/zTree3/api/cn/setting.callback.onMouseDown.html
Normal file
@@ -0,0 +1,35 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNode)</span><span class="path">setting.callback.</span>onMouseDown</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获 zTree 上鼠标按键按下后的事件回调函数</p>
|
||||
<p class="highlight_red">如果设置了 setting.callback.beforeMouseDown 方法,且返回 false,将无法触发 onMouseDown 事件回调函数。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>鼠标按键按下时所在节点的 JSON 数据对象</p>
|
||||
<p class="highlight_red">如果不在节点上,则返回 null</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 每次鼠标按键按下后, 弹出鼠标所在节点的 tId、name 的信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnMouseDown(event, treeId, treeNode) {
|
||||
alert(treeNode ? treeNode.tId + ", " + treeNode.name : "isRoot");
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onMouseDown: zTreeOnMouseDown
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
35
static/zTree3/api/cn/setting.callback.onMouseUp.html
Normal file
@@ -0,0 +1,35 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNode)</span><span class="path">setting.callback.</span>onMouseUp</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获 zTree 上鼠标按键松开后的事件回调函数</p>
|
||||
<p class="highlight_red">如果设置了 setting.callback.beforeMouseUp 方法,且返回 false,将无法触发 onMouseUp 事件回调函数。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>鼠标按键松开时所在节点的 JSON 数据对象</p>
|
||||
<p class="highlight_red">如果不在节点上,则返回 null</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 每次鼠标按键松开后, 弹出鼠标所在节点的 tId、name 的信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnMouseUp(event, treeId, treeNode) {
|
||||
alert(treeNode ? treeNode.tId + ", " + treeNode.name : "isRoot");
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onMouseUp: zTreeOnMouseUp
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
35
static/zTree3/api/cn/setting.callback.onNodeCreated.html
Normal file
@@ -0,0 +1,35 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNode)</span><span class="path">setting.callback.</span>onNodeCreated</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点生成 DOM 后的事件回调函数</p>
|
||||
<p class="highlight_red">v3.x 采用了延迟加载技术,因此对于父节点未展开的子节点来说,初始化后是不会触发此回调函数,直到其父节点被展开</p>
|
||||
<p class="highlight_red">大数据量的节点加载请注意:不设置 onNodeCreated,可以提升一部分初始化性能</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>生成 DOM 完毕的节点的 JSON 数据对象</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 创建节点 DOM 后, 弹出该节点的 tId、name 的信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnNodeCreated(event, treeId, treeNode) {
|
||||
alert(treeNode.tId + ", " + treeNode.name);
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onNodeCreated: zTreeOnNodeCreated
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
34
static/zTree3/api/cn/setting.callback.onRemove.html
Normal file
@@ -0,0 +1,34 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNode)</span><span class="path">setting.callback.</span>onRemove</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获删除节点之后的事件回调函数。</p>
|
||||
<p class="highlight_red">如果用户设置了 beforeRemove 回调函数,并返回 false,将无法触发 onRemove 事件回调函数。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>将要删除的节点 JSON 数据对象</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 删除节点时,弹出被删除的节点的 tId 以及 name 信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnRemove(event, treeId, treeNode) {
|
||||
alert(treeNode.tId + ", " + treeNode.name);
|
||||
}
|
||||
var setting = {
|
||||
callback: {
|
||||
onRemove: zTreeOnRemove
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
40
static/zTree3/api/cn/setting.callback.onRename.html
Normal file
@@ -0,0 +1,40 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNode, isCancel)</span><span class="path">setting.callback.</span>onRename</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获节点编辑名称结束之后的事件回调函数。</p>
|
||||
<p>1、节点进入编辑名称状态,并且修改节点名称后触发此回调函数。<span class="highlight_red">如果用户设置了 beforeRename 回调函数,并返回 false,将无法触发 onRename 事件回调函数。</span></p>
|
||||
<p>2、<span class="highlight_red">如果通过直接修改 treeNode 的数据,并且利用 updateNode 方法更新,是不会触发此回调函数的。</span></p>
|
||||
<p class="highlight_red">3、从 v3.5.13 开始,取消编辑状态也会触发此回调,根据 isCancel 参数判断</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>被修改名称的节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>isCancel</b><span>Boolean</span></h4>
|
||||
<p>是否取消操作 (v3.5.13+)</p>
|
||||
<p class="highlight_red">isCancel = true 表示取消编辑操作(按下 ESC 或 使用 cancelEditName 方法)</p>
|
||||
<p class="highlight_red">isCancel = false 表示确认修改操作</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 修改名称后,弹出被修改名称的节点的 tId 以及 name 信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnRename(event, treeId, treeNode, isCancel) {
|
||||
alert(treeNode.tId + ", " + treeNode.name);
|
||||
}
|
||||
var setting = {
|
||||
callback: {
|
||||
onRename: zTreeOnRename
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
36
static/zTree3/api/cn/setting.callback.onRightClick.html
Normal file
@@ -0,0 +1,36 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Function(event, treeId, treeNode)</span><span class="path">setting.callback.</span>onRightClick</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于捕获 zTree 上鼠标右键点击之后的事件回调函数</p>
|
||||
<p class="highlight_red">1、如果设置了 setting.callback.beforeRightClick 方法,且返回 false,将无法触发 onRightClick 事件回调函数。</p>
|
||||
<p class="highlight_red">2、只要将 function 的引用赋给 onRightClick 属性,则右键点击 zTree 时,将屏蔽浏览器的右键菜单。</p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>event</b><span>js event 对象</span></h4>
|
||||
<p>标准的 js event 对象</p>
|
||||
<h4 class="topLine"><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>鼠标右键点击时所在节点的 JSON 数据对象</p>
|
||||
<p class="highlight_red">如果不在节点上,则返回 null</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 每次鼠标右键点击后, 弹出鼠标所在节点的 tId、name 的信息</h4>
|
||||
<pre xmlns=""><code>function zTreeOnRightClick(event, treeId, treeNode) {
|
||||
alert(treeNode ? treeNode.tId + ", " + treeNode.name : "isRoot");
|
||||
};
|
||||
var setting = {
|
||||
callback: {
|
||||
onRightClick: zTreeOnRightClick
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
28
static/zTree3/api/cn/setting.check.autoCheckTrigger.html
Normal file
@@ -0,0 +1,28 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.check.</span>autoCheckTrigger</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.excheck</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>设置自动关联勾选时是否触发 beforeCheck / onCheck 事件回调函数。<span class="highlight_red">[setting.check.enable = true 且 setting.check.chkStyle = "checkbox" 时生效]</span></p>
|
||||
<p class="highlight_red">1、如果设置 setting.check.chkboxType = { "Y": "", "N": "" },将不会有任何自动关联勾选的操作。</p>
|
||||
<p class="highlight_red">2、如果开启触发,对于节点较多的树将会影响性能,因为所有被联动勾选的操作都会触发事件回调函数,请根据需要决定是否使用此功能。</p>
|
||||
<p>默认值: false</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true / false 分别表示 触发 / 不触发 事件回调函数</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 需要触发自动关联勾选操作</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
check: {
|
||||
enable: true,
|
||||
autoCheckTrigger: true
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
28
static/zTree3/api/cn/setting.check.chkDisabledInherit.html
Normal file
@@ -0,0 +1,28 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.check.</span>chkDisabledInherit</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.excheck</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>当父节点设置 chkDisabled = true 时,设置子节点是否自动继承 chkDisabled = true 。<span class="highlight_red">[setting.check.enable = true 时生效]</span></p>
|
||||
<p class="highlight_red">1、只使用于初始化节点时,便于批量操作。 对于已存在的节点请利用 setChkDisabled 方法单个节点设置。</p>
|
||||
<p>默认值: false</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true 表示 新加入子节点时,自动继承父节点 chkDisabled = true 的属性。</p>
|
||||
<p> false 表示 新加入子节点时,不继承父节点 chkDisabled 的属性。</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 需要子节点自动继承 chkDisabled = true</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
check: {
|
||||
enable: true,
|
||||
chkDisabledInherit: true
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
48
static/zTree3/api/cn/setting.check.chkStyle.html
Normal file
@@ -0,0 +1,48 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String</span><span class="path">setting.check.</span>chkStyle</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.excheck</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>勾选框类型(checkbox 或 radio)<span class="highlight_red">[setting.check.enable = true 时生效]</span></p>
|
||||
<p>默认值:"checkbox"</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>String 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p>chkStyle = "checkbox" 时,显示 checkbox 选择框,<span class="highlight_red">setting.check.chkboxType</span> 属性有效。
|
||||
<br/>chkStyle = "radio" 时,显示 radio 选择框, <span class="highlight_red">setting.check.radioType</span> 属性有效。</p>
|
||||
<p class="highlight_red">请注意大小写,不要改变</p>
|
||||
</div>
|
||||
<h3>checkbox 状态说明</h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p><button type="button" class="chk checkbox_false_full"></button>未勾选;<span class="highlight_red">如果是父节点,则无子节点被勾选</span>。鼠标移到该节点上显示为:<button type="button" class="chk checkbox_false_full_focus"></button></p>
|
||||
<p><button type="button" class="chk checkbox_false_part"></button>未勾选;(只有父节点存在此状态)<span class="highlight_red">存在被勾选的子节点</span>。鼠标移到该节点上显示为:<button type="button" class="chk checkbox_false_part_focus"></button></p>
|
||||
<p><button type="button" class="chk checkbox_true_full"></button>被勾选;<span class="highlight_red">如果是父节点,则全部子节点都被勾选</span>。鼠标移到该节点上显示为:<button type="button" class="chk checkbox_true_full_focus"></button></p>
|
||||
<p><button type="button" class="chk checkbox_true_part"></button>被勾选;(只有父节点存在此状态)<span class="highlight_red">且部分或无子节点被勾选</span>。鼠标移到该节点上显示为:<button type="button" class="chk checkbox_true_part_focus"></button></p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>radio 状态说明</h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p><button type="button" class="chk radio_false_full"></button>未勾选;<span class="highlight_red">如果是父节点,则没有子节点被勾选</span>。鼠标移到该节点上显示为:<button type="button" class="chk radio_false_full_focus"></button></p>
|
||||
<p><button type="button" class="chk radio_false_part"></button>未勾选;(只有父节点存在此状态)<span class="highlight_red">且存在被勾选的子节点</span>。鼠标移到该节点上显示为:<button type="button" class="chk radio_false_part_focus"></button></p>
|
||||
<p><button type="button" class="chk radio_true_full"></button>被勾选;<span class="highlight_red">如果是父节点,则没有子节点被勾选</span>。鼠标移到该节点上显示为:<button type="button" class="chk radio_true_full_focus"></button></p>
|
||||
<p><button type="button" class="chk radio_true_part"></button>被勾选;(只有父节点存在此状态)<span class="highlight_red">且存在被勾选的子节点</span>。鼠标移到该节点上显示为:<button type="button" class="chk radio_true_part_focus"></button></p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置选择框为 radio</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
check: {
|
||||
enable: true,
|
||||
chkStyle: "radio"
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
31
static/zTree3/api/cn/setting.check.chkboxType.html
Normal file
@@ -0,0 +1,31 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>JSON</span><span class="path">setting.check.</span>chkboxType</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.excheck</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>勾选 checkbox 对于父子节点的关联关系。<span class="highlight_red">[setting.check.enable = true 且 setting.check.chkStyle = "checkbox" 时生效]</span></p>
|
||||
<p>默认值:{ "Y": "ps", "N": "ps" }</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>JSON 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p>Y 属性定义 checkbox 被勾选后的情况;
|
||||
<br/>N 属性定义 checkbox 取消勾选后的情况;
|
||||
<br/>"p" 表示操作会影响父级节点;
|
||||
<br/>"s" 表示操作会影响子级节点。</p>
|
||||
<p class="highlight_red">请注意大小写,不要改变</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. checkbox 勾选操作,只影响父级节点;取消勾选操作,只影响子级节点</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
check: {
|
||||
enable: true,
|
||||
chkStyle: "checkbox",
|
||||
chkboxType: { "Y": "p", "N": "s" }
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
25
static/zTree3/api/cn/setting.check.enable.html
Normal file
@@ -0,0 +1,25 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.check.</span>enable</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.excheck</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>设置 zTree 的节点上是否显示 checkbox / radio</p>
|
||||
<p>默认值: false</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true / false 分别表示 显示 / 不显示 复选框或单选框</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 需要显示 checkbox</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
check: {
|
||||
enable: true
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
28
static/zTree3/api/cn/setting.check.nocheckInherit.html
Normal file
@@ -0,0 +1,28 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.check.</span>nocheckInherit</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.excheck</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>当父节点设置 nocheck = true 时,设置子节点是否自动继承 nocheck = true 。<span class="highlight_red">[setting.check.enable = true 时生效]</span></p>
|
||||
<p class="highlight_red">1、只使用于初始化节点时,便于批量操作。 对于已存在的节点请利用 updateNode 方法单个节点设置。</p>
|
||||
<p>默认值: false</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true 表示 新加入子节点时,自动继承父节点 nocheck = true 的属性。</p>
|
||||
<p> false 表示 新加入子节点时,不继承父节点 nocheck 的属性。</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 需要子节点自动继承 nocheck = true</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
check: {
|
||||
enable: true,
|
||||
nocheckInherit: true
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
29
static/zTree3/api/cn/setting.check.radioType.html
Normal file
@@ -0,0 +1,29 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String</span><span class="path">setting.check.</span>radioType</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.excheck</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>radio 的分组范围。<span class="highlight_red">[setting.check.enable = true 且 setting.check.chkStyle = "radio" 时生效]</span></p>
|
||||
<p>默认值:"level"</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>String 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p>radioType = "level" 时,在每一级节点范围内当做一个分组。
|
||||
<br/>radioType = "all" 时,在整棵树范围内当做一个分组。</p>
|
||||
<p class="highlight_red">请注意大小写,不要改变</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置 radio 的判别规则为整棵树内</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
check: {
|
||||
enable: true,
|
||||
chkStyle: "radio",
|
||||
radioType: "all"
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
28
static/zTree3/api/cn/setting.data.keep.leaf.html
Normal file
@@ -0,0 +1,28 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.data.keep.</span>leaf</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>zTree 的节点叶子节点属性锁,是否始终保持 isParent = false</p>
|
||||
<p>默认值:false</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true / false 分别表示 锁定 / 不锁定 叶子节点属性</p>
|
||||
<p class="highlight_red">如果设置为 true,则所有 isParent = false 的节点,都无法添加子节点。</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 需要锁定叶子节点状态</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
data: {
|
||||
keep: {
|
||||
leaf: true
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
28
static/zTree3/api/cn/setting.data.keep.parent.html
Normal file
@@ -0,0 +1,28 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.data.keep.</span>parent</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>zTree 的节点父节点属性锁,是否始终保持 isParent = true</p>
|
||||
<p>默认值:false</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true / false 分别表示 锁定 / 不锁定 父节点属性</p>
|
||||
<p class="highlight_red">如果设置为 true,则所有 isParent = true 的节点,即使该节点的子节点被全部删除或移走,依旧保持父节点状态。</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 需要锁定父节点状态</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
data: {
|
||||
keep: {
|
||||
parent: true
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
24
static/zTree3/api/cn/setting.data.key.checked.html
Normal file
@@ -0,0 +1,24 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String</span><span class="path">setting.data.key.</span>checked</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.excheck</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>zTree 节点数据中保存 check 状态的属性名称。</p>
|
||||
<p>默认值:"checked"</p>
|
||||
<p class="highlight_red">请勿与 zTree 节点数据的其他参数冲突,例如:checkedOld</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置 zTree 显示节点时,将 treeNode 的 isChecked 属性当做节点名称</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
data: {
|
||||
key: {
|
||||
checked: "isChecked"
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
23
static/zTree3/api/cn/setting.data.key.children.html
Normal file
@@ -0,0 +1,23 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String</span><span class="path">setting.data.key.</span>children</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>zTree 节点数据中保存子节点数据的属性名称。</p>
|
||||
<p>默认值:"children"</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置 zTree 显示节点时,将 treeNode 的 nodes 属性当做节点名称</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
data: {
|
||||
key: {
|
||||
children: "nodes"
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
23
static/zTree3/api/cn/setting.data.key.name.html
Normal file
@@ -0,0 +1,23 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String</span><span class="path">setting.data.key.</span>name</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>zTree 节点数据保存节点名称的属性名称。</p>
|
||||
<p>默认值:"name"</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置 zTree 显示节点时,将 treeNode 的 ename 属性当做节点名称</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
data: {
|
||||
key: {
|
||||
name: "ename"
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
24
static/zTree3/api/cn/setting.data.key.title.html
Normal file
@@ -0,0 +1,24 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String</span><span class="path">setting.data.key.</span>title</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>zTree 节点数据保存节点提示信息的属性名称。<span class="highlight_red">[setting.view.showTitle = true 时生效]</span></p>
|
||||
<p class="highlight_red">如果设置为 "" ,则自动与 setting.data.key.name 保持一致,避免用户反复设置</p>
|
||||
<p>默认值:""</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置 zTree 显示节点时,将 treeNode 的 fullName 属性当做节点名称</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
data: {
|
||||
key: {
|
||||
title: "fullName"
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
24
static/zTree3/api/cn/setting.data.key.url.html
Normal file
@@ -0,0 +1,24 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String</span><span class="path">setting.data.key.</span>url</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>zTree 节点数据保存节点链接的目标 URL 的属性名称。</p>
|
||||
<p class="highlight_red">特殊用途:当后台数据只能生成 url 属性,又不想实现点击节点跳转的功能时,可以直接修改此属性为其他不存在的属性名称</p>
|
||||
<p>默认值:"url"</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置 zTree 显示节点时,将 treeNode 的 xUrl 属性当做节点链接的目标 URL</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
data: {
|
||||
key: {
|
||||
url: "xUrl"
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
38
static/zTree3/api/cn/setting.data.simpleData.enable.html
Normal file
@@ -0,0 +1,38 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.data.simpleData.</span>enable</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>确定 zTree 初始化时的节点数据、异步加载时的节点数据、或 <span class="highlight_red">addNodes</span> 方法中输入的 newNodes 数据是否采用简单数据模式 (Array)</p>
|
||||
<p>不需要用户再把数据库中取出的 List 强行转换为复杂的 JSON 嵌套格式</p>
|
||||
<p>默认值:false</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true / false 分别表示 使用 / 不使用 简单数据模式</p>
|
||||
<p class="highlight_red">如果设置为 true,请务必设置 setting.data.simpleData 内的其他参数: idKey / pIdKey / rootPId,并且让数据满足父子关系。</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 使用简单 Array 格式的数据</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
data: {
|
||||
simpleData: {
|
||||
enable: true,
|
||||
idKey: "id",
|
||||
pIdKey: "pId",
|
||||
rootPId: 0
|
||||
}
|
||||
}
|
||||
};
|
||||
var treeNodes = [
|
||||
{"id":1, "pId":0, "name":"test1"},
|
||||
{"id":11, "pId":1, "name":"test11"},
|
||||
{"id":12, "pId":1, "name":"test12"},
|
||||
{"id":111, "pId":11, "name":"test111"}
|
||||
];
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
32
static/zTree3/api/cn/setting.data.simpleData.idKey.html
Normal file
@@ -0,0 +1,32 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String</span><span class="path">setting.data.simpleData.</span>idKey</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>节点数据中保存唯一标识的属性名称。<span class="highlight_red">[setting.data.simpleData.enable = true 时生效]</span></p>
|
||||
<p>默认值:"id"</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 使用简单 Array 格式的数据</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
data: {
|
||||
simpleData: {
|
||||
enable: true,
|
||||
idKey: "id",
|
||||
pIdKey: "pId",
|
||||
rootPId: 0
|
||||
}
|
||||
}
|
||||
};
|
||||
var treeNodes = [
|
||||
{"id":1, "pId":0, "name":"test1"},
|
||||
{"id":11, "pId":1, "name":"test11"},
|
||||
{"id":12, "pId":1, "name":"test12"},
|
||||
{"id":111, "pId":11, "name":"test111"}
|
||||
];
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
32
static/zTree3/api/cn/setting.data.simpleData.pIdKey.html
Normal file
@@ -0,0 +1,32 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String</span><span class="path">setting.data.simpleData.</span>pIdKey</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>节点数据中保存其父节点唯一标识的属性名称。<span class="highlight_red">[setting.data.simpleData.enable = true 时生效]</span></p>
|
||||
<p>默认值:"pId"</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 使用简单 Array 格式的数据</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
data: {
|
||||
simpleData: {
|
||||
enable: true,
|
||||
idKey: "id",
|
||||
pIdKey: "pId",
|
||||
rootPId: 0
|
||||
}
|
||||
}
|
||||
};
|
||||
var treeNodes = [
|
||||
{"id":1, "pId":0, "name":"test1"},
|
||||
{"id":11, "pId":1, "name":"test11"},
|
||||
{"id":12, "pId":1, "name":"test12"},
|
||||
{"id":111, "pId":11, "name":"test111"}
|
||||
];
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
32
static/zTree3/api/cn/setting.data.simpleData.rootPId.html
Normal file
@@ -0,0 +1,32 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String / Number</span><span class="path">setting.data.simpleData.</span>rootPId</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.core</span> 核心 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>用于修正根节点父节点数据,即 pIdKey 指定的属性值。<span class="highlight_red">[setting.data.simpleData.enable = true 时生效]</span></p>
|
||||
<p>默认值:null</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 使用简单 Array 格式的数据</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
data: {
|
||||
simpleData: {
|
||||
enable: true,
|
||||
idKey: "id",
|
||||
pIdKey: "pId",
|
||||
rootPId: 0
|
||||
}
|
||||
}
|
||||
};
|
||||
var treeNodes = [
|
||||
{"id":1, "pId":0, "name":"test1"},
|
||||
{"id":11, "pId":1, "name":"test11"},
|
||||
{"id":12, "pId":1, "name":"test12"},
|
||||
{"id":111, "pId":11, "name":"test111"}
|
||||
];
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,28 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.edit.drag.</span>autoExpandTrigger</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>拖拽时父节点自动展开是否触发 onExpand 事件回调函数。<span class="highlight_red">[setting.edit.enable = true 时生效]</span></p>
|
||||
<p>默认值:false</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true / false 分别表示 触发 / 不触发 onExpand 事件回调函数。</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置拖拽时父节点自动展开触发 onExpand 事件回调函数</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
autoExpandTrigger: true
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
25
static/zTree3/api/cn/setting.edit.drag.autoOpenTime.html
Normal file
@@ -0,0 +1,25 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Number</span><span class="path">setting.edit.drag.</span>autoOpenTime</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>拖拽时父节点自动展开的延时间隔。 (单位:ms)<span class="highlight_red">[setting.edit.enable = true 时生效]</span></p>
|
||||
<p>默认值:500</p>
|
||||
<p class="highlight_red">请根据自己的需求适当调整此值</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置拖拽到父节点上立刻自动展开</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
autoOpenTime: 0
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
25
static/zTree3/api/cn/setting.edit.drag.borderMax.html
Normal file
@@ -0,0 +1,25 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Number</span><span class="path">setting.edit.drag.</span>borderMax</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>拖拽节点成为根节点时的 Tree 内边界范围 (单位:px)。<span class="highlight_red">[setting.edit.enable = true 时生效]</span></p>
|
||||
<p>默认值:10</p>
|
||||
<p class="highlight_red">请根据自己的需求适当调整此值</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 更改拖拽操作节点成为根节点时的 Tree 内边界范围为20px</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
borderMax: 20
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
25
static/zTree3/api/cn/setting.edit.drag.borderMin.html
Normal file
@@ -0,0 +1,25 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Number</span><span class="path">setting.edit.drag.</span>borderMin</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>拖拽节点成为根节点时的 Tree 外边界范围 (单位:px)。<span class="highlight_red">[setting.edit.enable = true 时生效]</span></p>
|
||||
<p>默认值:-5</p>
|
||||
<p class="highlight_red">请根据自己的需求适当调整此值</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 更改拖拽操作节点成为根节点时的 Tree 外边界范围为10px</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
borderMin: -10
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
59
static/zTree3/api/cn/setting.edit.drag.inner.html
Normal file
@@ -0,0 +1,59 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean / Function(treeId, treeNodes, targetNode)</span><span class="path">setting.edit.drag.</span>inner</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>拖拽到目标节点时,设置是否允许成为目标节点的子节点。<span class="highlight_red">[setting.edit.enable = true 时生效]</span></p>
|
||||
<p class="highlight_red">拖拽目标是 根 的时候,不触发 prev 和 next,只会触发 inner</p>
|
||||
<p class="highlight_red">此功能主要作用是对拖拽进行适当限制(辅助箭头),需要结合 prev、next 一起使用,才能实现完整功能。</p>
|
||||
<p>默认值:true</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true / false 分别表示 允许 / 不允许 成为目标节点的子节点</p>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控(多棵树拖拽时,是目标节点所在树的 treeId)</p>
|
||||
<h4 class="topLine"><b>treeNodes</b><span>Array(JSON)</span></h4>
|
||||
<p>被拖拽的节点 JSON 数据集合</p>
|
||||
<h4 class="topLine"><b>targetNode</b><span>JSON</span></h4>
|
||||
<p>拖拽时的目标节点 JSON 数据对象</p>
|
||||
<p class="highlight_red">如果拖拽的节点要成为根节点,则 targetNode = null</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值同 Boolean 格式的数据</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止拖拽成为目标节点的子节点</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
prev: true,
|
||||
next: true,
|
||||
inner: false
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
<h4>2. 禁止拖拽成为根节点的子节点</h4>
|
||||
<pre xmlns=""><code>function canInner(treeId, nodes, targetNode) {
|
||||
return !(targetNode && targetNode.level === 0);
|
||||
}
|
||||
var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
prev: true,
|
||||
next: true,
|
||||
inner: canInner
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
32
static/zTree3/api/cn/setting.edit.drag.isCopy.html
Normal file
@@ -0,0 +1,32 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.edit.drag.</span>isCopy</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>拖拽时, 设置是否允许复制节点。<span class="highlight_red">[setting.edit.enable = true 时生效]</span></p>
|
||||
<p>默认值:true</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>规则说明</h3>
|
||||
<div class="desc">
|
||||
<p>1、isCopy = true; isMove = true 时,拖拽节点按下 Ctrl 或 Cmd 键表示 copy; 否则为 move</p>
|
||||
<p>2、isCopy = true; isMove = false 时,所有拖拽操作都是 copy</p>
|
||||
<p>3、isCopy = false; isMove = true 时,所有拖拽操作都是 move</p>
|
||||
<p>4、isCopy = false; isMove = false 时,禁止拖拽操作</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置所有拖拽操作都是 copy</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
isCopy: true,
|
||||
isMove: false
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
32
static/zTree3/api/cn/setting.edit.drag.isMove.html
Normal file
@@ -0,0 +1,32 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.edit.drag.</span>isMove</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>拖拽时, 设置是否允许移动节点。<span class="highlight_red">[setting.edit.enable = true 时生效]</span></p>
|
||||
<p>默认值:true</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>规则说明</h3>
|
||||
<div class="desc">
|
||||
<p>1、isCopy = true; isMove = true 时,拖拽节点按下 Ctrl 或 Cmd 键表示 copy; 否则为 move</p>
|
||||
<p>2、isCopy = true; isMove = false 时,所有拖拽操作都是 copy</p>
|
||||
<p>3、isCopy = false; isMove = true 时,所有拖拽操作都是 move</p>
|
||||
<p>4、isCopy = false; isMove = false 时,禁止拖拽操作</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置所有拖拽操作都是 move</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
isCopy: false,
|
||||
isMove: true
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
25
static/zTree3/api/cn/setting.edit.drag.maxShowNodeNum.html
Normal file
@@ -0,0 +1,25 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Number</span><span class="path">setting.edit.drag.</span>maxShowNodeNum</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>拖拽多个兄弟节点时,浮动图层中显示的最大节点数。 多余的节点用...代替。<span class="highlight_red">[setting.edit.enable = true 时生效]</span></p>
|
||||
<p>默认值:5</p>
|
||||
<p class="highlight_red">请根据自己的需求适当调整此值</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置拖拽时最多可显示10个节点</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
maxShowNodeNum: 10
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
25
static/zTree3/api/cn/setting.edit.drag.minMoveSize.html
Normal file
@@ -0,0 +1,25 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Number</span><span class="path">setting.edit.drag.</span>minMoveSize</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>判定是否拖拽操作的最小位移值 (单位:px)。<span class="highlight_red">[setting.edit.enable = true 时生效]</span></p>
|
||||
<p class="highlight_red">根据自己的需求可适当调整此值,如果太小容易导致点击鼠标时误操作进行拖拽</p>
|
||||
<p>默认值:5</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 更改拖拽操作启动位移值为10px</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
minMoveSize: 10
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
58
static/zTree3/api/cn/setting.edit.drag.next.html
Normal file
@@ -0,0 +1,58 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean / Function(treeId, treeNodes, targetNode)</span><span class="path">setting.edit.drag.</span>next</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>拖拽到目标节点时,设置是否允许移动到目标节点后面的操作。<span class="highlight_red">[setting.edit.enable = true 时生效]</span></p>
|
||||
<p class="highlight_red">拖拽目标是 根 的时候,不触发 prev 和 next,只会触发 inner</p>
|
||||
<p class="highlight_red">此功能主要作用是对拖拽进行适当限制(辅助箭头),需要结合 prev、inner 一起使用,才能实现完整功能。</p>
|
||||
<p>默认值:true</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true / false 分别表示 允许 / 不允许 移动到目标节点后面</p>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控(多棵树拖拽时,是目标节点所在树的 treeId)</p>
|
||||
<h4 class="topLine"><b>treeNodes</b><span>Array(JSON)</span></h4>
|
||||
<p>被拖拽的节点 JSON 数据集合</p>
|
||||
<h4 class="topLine"><b>targetNode</b><span>JSON</span></h4>
|
||||
<p>拖拽时的目标节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值同 Boolean 格式的数据</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止拖拽到节点后面的操作</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
prev: true,
|
||||
next: false,
|
||||
inner: true
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
<h4>2. 禁止拖拽到父节点后面的操作</h4>
|
||||
<pre xmlns=""><code>function canNext(treeId, nodes, targetNode) {
|
||||
return !targetNode.isParent;
|
||||
}
|
||||
var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
prev: true,
|
||||
next: canNext,
|
||||
inner: true
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
58
static/zTree3/api/cn/setting.edit.drag.prev.html
Normal file
@@ -0,0 +1,58 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean / Function(treeId, treeNodes, targetNode)</span><span class="path">setting.edit.drag.</span>prev</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>拖拽到目标节点时,设置是否允许移动到目标节点前面的操作。<span class="highlight_red">[setting.edit.enable = true 时生效]</span></p>
|
||||
<p class="highlight_red">拖拽目标是 根 的时候,不触发 prev 和 next,只会触发 inner</p>
|
||||
<p class="highlight_red">此功能主要作用是对拖拽进行适当限制(辅助箭头),需要结合 next、inner 一起使用,才能实现完整功能。</p>
|
||||
<p>默认值:true</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true / false 分别表示 允许 / 不允许 移动到目标节点前面</p>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控(多棵树拖拽时,是目标节点所在树的 treeId)</p>
|
||||
<h4 class="topLine"><b>treeNodes</b><span>Array(JSON)</span></h4>
|
||||
<p>被拖拽的节点 JSON 数据集合</p>
|
||||
<h4 class="topLine"><b>targetNode</b><span>JSON</span></h4>
|
||||
<p>拖拽时的目标节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>Boolean</span></h4>
|
||||
<p>返回值同 Boolean 格式的数据</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 禁止拖拽到节点前面的操作</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
prev: false,
|
||||
next: true,
|
||||
inner: true
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
<h4>2. 禁止拖拽到父节点前面的操作</h4>
|
||||
<pre xmlns=""><code>function canPrev(treeId, nodes, targetNode) {
|
||||
return !targetNode.isParent;
|
||||
}
|
||||
var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
drag: {
|
||||
prev: canPrev,
|
||||
next: true,
|
||||
inner: true
|
||||
}
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
27
static/zTree3/api/cn/setting.edit.editNameSelectAll.html
Normal file
@@ -0,0 +1,27 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.edit.</span>editNameSelectAll</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>节点编辑名称 input 初次显示时,设置 txt 内容是否为全选状态。 <span class="highlight_red">[setting.edit.enable = true 时生效]</span></p>
|
||||
<p>默认值: false</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true 表示 全选状态</p>
|
||||
<p> false 表示 不是全选状态,光标默认在最后</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置节点编辑名称 input 初次显示时,txt内容为全选状态</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
editNameSelectAll: true
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
38
static/zTree3/api/cn/setting.edit.enable.html
Normal file
@@ -0,0 +1,38 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>Boolean</span><span class="path">setting.edit.</span>enable</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>设置 zTree 是否处于编辑状态</p>
|
||||
<p class="highlight_red">请在初始化之前设置,初始化后需要改变编辑状态请使用 zTreeObj.setEditable() 方法</p>
|
||||
<p>默认值: false</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>Boolean 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p> true / false 分别表示 可以 / 不可以 编辑</p>
|
||||
</div>
|
||||
<h3>编辑状态规则说明</h3>
|
||||
<div class="desc">
|
||||
<p>1、点击节点时,不会打开 <span class="highlight_red">node.url</span> 指定的 URL。
|
||||
<br/>2、全面支持 编辑 与 异步加载 状态共存。
|
||||
<br/>3、可以对节点进行拖拽,且支持多棵树之间进行拖拽。
|
||||
<br/>4、支持拖拽时 复制/移动 节点。(参考: <span class="highlight_red">setting.edit.drag.isCopy / setting.edit.drag.isMove</span>)
|
||||
<br/>5、可以通过编辑按钮修改 name 属性。
|
||||
<br/>6、可以通过删除按钮删除节点。
|
||||
<br/>
|
||||
</p>
|
||||
<p class="highlight_red">请注意大小写,不要改变</p>
|
||||
</div>
|
||||
<h3>setting 举例</h3>
|
||||
<h4>1. 设置 zTree 进入编辑状态</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
48
static/zTree3/api/cn/setting.edit.removeTitle.html
Normal file
@@ -0,0 +1,48 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String / Function(treeId, treeNode)</span><span class="path">setting.edit.</span>removeTitle</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>删除按钮的 Title 辅助信息。<span class="highlight_red">[setting.edit.enable = true & setting.edit.showRemoveBtn = true 时生效]</span></p>
|
||||
<p>默认值:"remove"</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>String 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p>鼠标移动到 删除按钮 上时,浏览器自动弹出的辅助信息内容,可根据用户需要自行修改</p>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>需要设置删除按钮 Title 信息的节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>String</span></h4>
|
||||
<p>返回值同 String 格式的数据</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 设置删除按钮的 Title 辅助信息为: "删除节点"</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
showRemoveBtn: true,
|
||||
removeTitle: "删除节点"
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
<h4>2. 设置父节点删除按钮的 Title 辅助信息为: "删除父节点"</h4>
|
||||
<pre xmlns=""><code>function setRemoveTitle(treeId, treeNode) {
|
||||
return treeNode.isParent ? "删除父节点":"删除叶子节点";
|
||||
}
|
||||
var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
showRemoveBtn: true,
|
||||
removeTitle: setRemoveTitle
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||
48
static/zTree3/api/cn/setting.edit.renameTitle.html
Normal file
@@ -0,0 +1,48 @@
|
||||
<div class="apiDetail">
|
||||
<div>
|
||||
<h2><span>String / Function(treeId, treeNode)</span><span class="path">setting.edit.</span>renameTitle</h2>
|
||||
<h3>概述<span class="h3_info">[ 依赖 <span class="highlight_green">jquery.ztree.exedit</span> 扩展 js ]</span></h3>
|
||||
<div class="desc">
|
||||
<p></p>
|
||||
<div class="longdesc">
|
||||
<p>编辑名称按钮的 Title 辅助信息。<span class="highlight_red">[setting.edit.enable = true & setting.edit.showRenameBtn = true 时生效]</span></p>
|
||||
<p>默认值:"rename"</p>
|
||||
</div>
|
||||
</div>
|
||||
<h3>String 格式说明</h3>
|
||||
<div class="desc">
|
||||
<p>设置鼠标移动到 编辑名称按钮 上时,浏览器自动弹出的辅助信息内容,可根据用户需要自行修改</p>
|
||||
</div>
|
||||
<h3>Function 参数说明</h3>
|
||||
<div class="desc">
|
||||
<h4><b>treeId</b><span>String</span></h4>
|
||||
<p>对应 zTree 的 <b class="highlight_red">treeId</b>,便于用户操控</p>
|
||||
<h4 class="topLine"><b>treeNode</b><span>JSON</span></h4>
|
||||
<p>需要设置编辑名称按钮 Title 信息的节点 JSON 数据对象</p>
|
||||
<h4 class="topLine"><b>返回值</b><span>String</span></h4>
|
||||
<p>返回值同 String 格式的数据</p>
|
||||
</div>
|
||||
<h3>setting & function 举例</h3>
|
||||
<h4>1. 设置编辑名称按钮的 Title 辅助信息为: "编辑节点名称"</h4>
|
||||
<pre xmlns=""><code>var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
showRenameBtn: true,
|
||||
renameTitle: "编辑节点名称"
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
<h4>2. 设置父节点编辑名称按钮的 Title 辅助信息为: "编辑父节点名称"</h4>
|
||||
<pre xmlns=""><code>function setRenameTitle(treeId, treeNode) {
|
||||
return treeNode.isParent ? "编辑父节点名称":"编辑叶子节点名称";
|
||||
}
|
||||
var setting = {
|
||||
edit: {
|
||||
enable: true,
|
||||
showRenameBtn: true,
|
||||
renameTitle: setRenameTitle
|
||||
}
|
||||
};
|
||||
......</code></pre>
|
||||
</div>
|
||||
</div>
|
||||