rightClickMenu.html 4.91 KB
<!DOCTYPE html>
<HTML>
<HEAD>
	<TITLE> ZTREE DEMO - select menu</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-3.0.js"></script>
	<script type="text/javascript" src="../../js/jquery.ztree.excheck-3.0.js"></script>
	<script type="text/javascript" src="../../js/jquery.ztree.exedit-3.0.js"></script>
	<SCRIPT LANGUAGE="JavaScript">
		<!--
		var setting = {
			view: {
				dblClickExpand: false
			},
			check: {
				enable: true
			},
			callback: {
				onRightClick: OnRightClick
			}
		};

		var zNodes =[
			{id:1, name:"姝ょ被鑺傜偣涓嶅搷搴斿彸閿彍鍗?, open:true, noR:true,
				childs:[
					   {id:11, name:"鑺傜偣1", noR:true},
					   {id:12, name:"鑺傜偣2", noR:true}

				]},
			{id:2, name:"鍙抽敭鎿嶄綔 1", open:true,
				childs:[
					   {id:21, name:"鑺傜偣11"},
					   {id:22, name:"鑺傜偣12"},
					   {id:23, name:"鑺傜偣13"},
					   {id:24, name:"鑺傜偣14"}
				]},
			{id:3, name:"鍙抽敭鎿嶄綔 1", open:true,
				childs:[
					   {id:31, name:"鑺傜偣21"},
					   {id:32, name:"鑺傜偣22"},
					   {id:33, name:"鑺傜偣23"},
					   {id:34, name:"鑺傜偣24"}
				]}
  	 	];

		function OnRightClick(event, treeId, treeNode) {
			if (!treeNode && event.target.tagName.toLowerCase() != "button" && $(event.target).parents("a").length == 0) {
				zTree.cancelSelectedNode();
				showRMenu("root", event.clientX, event.clientY);
			} else if (treeNode && !treeNode.noR) {
				zTree.selectNode(treeNode);
				showRMenu("node", event.clientX, event.clientY);
			}
		}

		function showRMenu(type, x, y) {
			$("#rMenu ul").show();
			if (type=="root") {
				$("#m_del").hide();
				$("#m_check").hide();
				$("#m_unCheck").hide();
			} else {
				$("#m_del").show();
				$("#m_check").show();
				$("#m_unCheck").show();
			}
			rMenu.css({"top":y+"px", "left":x+"px", "visibility":"visible"});

			$("body").bind("mousedown", onBodyMouseDown);
		}
		function hideRMenu() {
			if (rMenu) rMenu.css({"visibility": "hidden"});
			$("body").unbind("mousedown", onBodyMouseDown);
		}
		function onBodyMouseDown(event){
			if (!(event.target.id == "rMenu" || $(event.target).parents("#rMenu").length>0)) {
				rMenu.css({"visibility" : "hidden"});
			}
		}
		var addCount = 1;
		function addTreeNode() {
			hideRMenu();
			zTree.addNodes(zTree.getSelectedNodes()[0], [{ name:"澧炲姞" + (addCount++)}]);
		}
		function removeTreeNode() {
			hideRMenu();
			var nodes = zTree.getSelectedNodes();
			if (nodes && nodes.length>0) {
				if (nodes[0].childs && nodes[0].childs.length > 0) {
					var msg = "瑕佸垹闄ょ殑鑺傜偣鏄埗鑺傜偣锛屽鏋滃垹闄ゅ皢杩炲悓瀛愯妭鐐逛竴璧峰垹鎺夈€俓n\n璇风‘璁わ紒";
					if (confirm(msg)==true){
						zTree.removeNode(nodes[0]);
					}
				} else {
					zTree.removeNode(nodes[0]);
				}
			}
		}
		function checkTreeNode(checked) {
			var nodes = zTree.getSelectedNodes();
			if (nodes && nodes.length>0) {
				zTree.checkNode(nodes[0], checked, true);
			}
			hideRMenu();
		}
		function resetTree() {
			hideRMenu();
			$.fn.zTree.init($("#treeDemo"), setting, zNodes);
		}

		var zTree, rMenu;
		$(document).ready(function(){
			$.fn.zTree.init($("#treeDemo"), setting, zNodes);
			zTree = $.fn.zTree.getZTreeObj("treeDemo");
			rMenu = $("#rMenu");
		});
		//-->
	</SCRIPT>
	<style type="text/css">
div#rMenu {position:absolute; visibility:hidden;background-color: #555;text-align: left;padding: 2px;}
div#rMenu ul li{
	margin: 1px 0;
	padding: 0 5px;
	cursor: pointer;
	list-style: none outside none;
	background-color: #DFDFDF;
}
	</style>
 </HEAD>

<BODY>
<h1>鍙抽敭鑿滃崟鐨勫疄鐜?/h1>
<h6>[ 鏂囦欢璺緞锛歞emo/super/rightClickMenu.html ]</h6>
<div class="content_wrap">
	<div class="zTreeDemoBackground left">
		<ul id="treeDemo" class="ztree"></ul>
	</div>
	<div class="right">
		<ul class="info">
			<li class="title"><h2>瀹炵幇鏂规硶璇存槑</h2>
				<ul class="list">
				<li>鍒╃敤 beforeRightClick / onRightClick 浜嬩欢鍥炶皟鍑芥暟绠€鍗曞疄鐜扮殑鍙抽敭鑿滃崟</li>
				<li class="highlight_red">Demo 涓殑鑿滃崟姣旇緝绠€闄嬶紝浣犲畬鍏ㄥ彲浠ラ厤鍚堝叾浠栬嚜瀹氫箟鏍峰紡鐨勮彍鍗曞浘灞傛贩鍚堜娇鐢?/li>
				</ul>
			</li>
		</ul>
	</div>
</div>
<div id="rMenu">
	<ul>
		<li id="m_add" onclick="addTreeNode();">澧炲姞鑺傜偣</li>
		<li id="m_del" onclick="removeTreeNode();">鍒犻櫎鑺傜偣</li>
		<li id="m_check" onclick="checkTreeNode(true);">Check鑺傜偣</li>
		<li id="m_unCheck" onclick="checkTreeNode(false);">unCheck鑺傜偣</li>
		<li id="m_reset" onclick="resetTree();">鎭㈠zTree</li>
	</ul>
</div>
</BODY>
</HTML>