rightClickMenu.html 5.1 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.5.js"></script>
	<script type="text/javascript" src="../../../js/jquery.ztree.excheck-3.5.js"></script>
	<script type="text/javascript" src="../../../js/jquery.ztree.exedit-3.5.js"></script>
	<SCRIPT type="text/javascript">
		<!--
		var setting = {
			view: {
				dblClickExpand: false
			},
			check: {
				enable: true
			},
			callback: {
				onRightClick: OnRightClick
			}
		};

		var zNodes =[
			{id:1, name:"鏃犲彸閿彍鍗?1", open:true, noR:true,
				children:[
					   {id:11, name:"鑺傜偣 1-1", noR:true},
					   {id:12, name:"鑺傜偣 1-2", noR:true}

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

		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();
			var newNode = { name:"澧炲姞" + (addCount++)};
			if (zTree.getSelectedNodes()[0]) {
				newNode.checked = zTree.getSelectedNodes()[0].checked;
				zTree.addNodes(zTree.getSelectedNodes()[0], newNode);
			} else {
				zTree.addNodes(null, newNode);
			}
		}
		function removeTreeNode() {
			hideRMenu();
			var nodes = zTree.getSelectedNodes();
			if (nodes && nodes.length>0) {
				if (nodes[0].children && nodes[0].children.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; top:0; 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>[ 鏂囦欢璺緞: 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>