From d74b495736f0c04522ec54274b70fed0ded2878d Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Tue, 27 Jun 2023 11:30:06 +0800
Subject: [PATCH] 任务新增导出

---
 public/map/lib/zTree_v3/demo/cn/bigdata/common.html |  190 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 190 insertions(+), 0 deletions(-)

diff --git a/public/map/lib/zTree_v3/demo/cn/bigdata/common.html b/public/map/lib/zTree_v3/demo/cn/bigdata/common.html
new file mode 100644
index 0000000..1f602f1
--- /dev/null
+++ b/public/map/lib/zTree_v3/demo/cn/bigdata/common.html
@@ -0,0 +1,190 @@
+<!DOCTYPE html>
+<HTML>
+<HEAD>
+	<TITLE> ZTREE DEMO - big data common</TITLE>
+	<meta http-equiv="content-type" content="text/html; charset=UTF-8">
+	<link rel="stylesheet" href="../../../css/demo.css" type="text/css">
+	<link rel="stylesheet" href="../../../css/zTreeStyle/zTreeStyle.css" type="text/css">
+	<script type="text/javascript" src="../../../js/jquery-1.4.4.min.js"></script>
+	<script type="text/javascript" src="../../../js/jquery.ztree.core.js"></script>
+	<script type="text/javascript" src="../../../js/jquery.ztree.excheck.js"></script>
+	<script type="text/javascript" src="../../../js/jquery.ztree.exedit.js"></script>
+	<SCRIPT type="text/javascript">
+		<!--
+		var setting = {
+			check: {
+				enable: true
+			},
+			data: {
+				simpleData: {
+					enable: true
+				}
+			},
+			callback: {
+				onNodeCreated: onNodeCreated
+			}
+		};
+
+		var dataMaker = function(count) {
+			var nodes = [], pId = -1,
+			min = 10, max = 90, level = 0, curLevel = [], prevLevel = [], levelCount,
+			i = 0,j,k,l,m;
+
+			while (i<count) {
+				if (level == 0) {
+					pId = -1;
+					levelCount = Math.round(Math.random() * max) + min;
+					for (j=0; j<levelCount && i<count; j++, i++) {
+						var n = {id:i, pId:pId, name:"Big-" +i};
+						nodes.push(n);
+						curLevel.push(n);
+					}
+				} else {
+					for (l=0, m=prevLevel.length; l<m && i<count; l++) {
+						pId = prevLevel[l].id;
+						levelCount = Math.round(Math.random() * max) + min;
+						for (j=0; j<levelCount && i<count; j++, i++) {
+							var n = {id:i, pId:pId, name:"Big-" +i};
+							nodes.push(n);
+							curLevel.push(n);
+						}
+					}
+				}
+				prevLevel = curLevel;
+				curLevel = [];
+				level++;
+			}
+			return nodes;
+		}
+
+		var ruler = {
+			doc: null,
+			ruler: null,
+			cursor: null,
+			minCount: 5000,
+			count: 5000,
+			stepCount:500,
+			minWidth: 30,
+			maxWidth: 215,
+			init: function() {
+				ruler.doc = $(document);
+				ruler.ruler = $("#ruler");
+				ruler.cursor = $("#cursor");
+				if (ruler.ruler) {
+					ruler.ruler.bind("mousedown", ruler.onMouseDown);
+					
+				}
+			},
+			onMouseDown: function(e) {
+				ruler.drawRuler(e, true);
+				ruler.doc.bind("mousemove", ruler.onMouseMove);
+				ruler.doc.bind("mouseup", ruler.onMouseUp);
+				ruler.doc.bind("selectstart", ruler.onSelect);
+				$("body").css("cursor", "pointer");
+			},
+			onMouseMove: function(e) {
+				ruler.drawRuler(e);
+				return false;
+			},
+			onMouseUp: function(e) {
+				$("body").css("cursor", "auto");
+				ruler.doc.unbind("mousemove", ruler.onMouseMove);
+				ruler.doc.unbind("mouseup", ruler.onMouseUp);
+				ruler.doc.unbind("selectstart", ruler.onSelect);
+				ruler.drawRuler(e);
+			},
+			onSelect: function (e) {
+				return false;
+			},
+			getCount: function(end) {
+				var start = ruler.ruler.offset().left+1;
+				var c = Math.max((end - start), ruler.minWidth);
+				c = Math.min(c, ruler.maxWidth);
+				return {width:c, count:(c - ruler.minWidth)*ruler.stepCount + ruler.minCount};
+			},
+			drawRuler: function(e, animate) {
+				var c = ruler.getCount(e.clientX);
+				ruler.cursor.stop();
+				if ($.browser.msie || !animate) {
+					ruler.cursor.css({width:c.width});
+				} else {
+					ruler.cursor.animate({width:c.width}, {duration: "fast",easing: "swing", complete:null});
+				}
+				ruler.count = c.count;
+				ruler.cursor.text(c.count);
+			}
+		}
+		var showNodeCount = 0;
+		function onNodeCreated(event, treeId, treeNode) {
+			showNodeCount++;
+		}
+
+		function createTree () {
+			var zNodes = dataMaker(ruler.count);
+			showNodeCount = 0;
+			$("#treeDemo").empty();
+			setting.check.enable = $("#showChk").attr("checked");
+			var time1 = new Date();
+			$.fn.zTree.init($("#treeDemo"), setting, zNodes);
+			var time2 = new Date();
+
+			alert("节点共 " + zNodes.length + " 个, 初始化生成 DOM 的节点共 " + showNodeCount + " 个"
+				+ "\n\n 初始化 zTree 共耗时: " + (time2.getTime() - time1.getTime()) + " ms");
+		}
+
+
+		$(document).ready(function(){
+			ruler.init("ruler");
+			$("#createTree").bind("click", createTree);
+
+		});
+		//-->
+	</SCRIPT>
+ </HEAD>
+
+<BODY>
+<h1>一次性加载大数据量</h1>
+<h6>[ 文件路径: bigdata/common.html ]</h6>
+<div class="content_wrap">
+	<div class="zTreeDemoBackground left">
+		<ul>
+		<li><span>调整总节点数,测试加载速度:</span>
+			<div id="ruler" class="ruler" title="拖拽可调整节点数">
+				<div id="cursor" class="cursor">5000</div>
+			</div>
+			<div style="width:220px; text-align: center;">
+				<span>checkbox</span><input type="checkbox" id="showChk" title="是否显示 checkbox" class="checkbox first" />&nbsp;&nbsp;&nbsp;&nbsp;
+				[ <a id="createTree" href="#" title="初始化 zTree" onclick="return false;">初始化 zTree</a> ]
+			</div>
+		</li>
+		</ul>
+		<ul id="treeDemo" class="ztree"></ul>
+	</div>
+	<div class="right">
+		<ul class="info">
+			<li class="title"><h2>1、大数据量加载说明</h2>
+				<ul class="list">
+				<li>1)、zTree v3.x 针对大数据量一次性加载进行了更深入的优化,实现了延迟加载功能,即不展开的节点不创建子节点的 DOM。</li>
+				<li class="highlight_red">2)、对于每级节点最多一百左右,但总节点数几千甚至几万,且不是全部展开的数据,一次性加载的效果最明显,速度非常快。</li>
+				<li class="highlight_red">3)、对于某一级节点数就多达几千的情况 延迟加载无效,这种情况建议考虑分页异步加载。</li>
+				<li class="highlight_red">4)、对于全部节点都展开显示的情况,延迟加载无效,这种情况建议不要全部展开。</li>
+				<li>5)、显示 checkbox / radio 会造成一定程度的性能下降。</li>
+				<li>6)、利用 addDiyDom 功能增加自定义控件会影响速度,影响程度受节点数量而定。</li>
+				<li>7)、利用 onNodeCreated 事件回调函数对节点 DOM 进行操作会影响速度,影响程度受节点数量而定。</li>
+				</ul>
+			</li>
+			<li class="title"><h2>2、setting 配置信息说明</h2>
+				<ul class="list">
+				<li>不需要进行特殊的配置</li>
+				</ul>
+			</li>
+			<li class="title"><h2>3、treeNode 节点数据说明</h2>
+				<ul class="list">
+				<li>对 节点数据 没有特殊要求,用户可以根据自己的需求添加自定义属性</li>
+				</ul>
+			</li>
+		</ul>
+	</div>
+</div>
+</BODY>
+</HTML>
\ No newline at end of file

--
Gitblit v1.9.3