treeview_kernel.js

来自「精美的AJAX树形菜单」· JavaScript 代码 · 共 1,421 行 · 第 1/3 页

JS
1,421
字号
	};
ComponentArt_TreeViewNode.prototype.qzzp=function(qzgu,qzhb,bInnerOnly){
	var qqZi=false,qza=new Array();
	if(!bInnerOnly)
		qza[qza.length]="<td id='"+this.ParentTreeView.TreeViewID+'_item_'+this.StorageIndex+"_expcol' align='center'>";
	if(qzgu){
		var qzoi="",qzoh="",qzzu=-1,qzxa=-1;
		if(this.ParentTreeView.ShowLines){
			qqZi=true;
			if(this.ParentTreeView.LineImageHeight>0)
				qzxa=this.ParentTreeView.LineImageHeight;
			if(this.ParentTreeView.LineImageWidth>0)
				qzzu=this.ParentTreeView.LineImageWidth;
			if(this.qzcu==0){
				if(this.StorageIndex==this.ParentTreeView.GetFirstRootNodeIndex()){
					if(qzhb){
						qzoh=this.ParentTreeView.LineImagesFolderUrl+"/dashminus.gif";
						qzoi=this.ParentTreeView.LineImagesFolderUrl+"/dashplus.gif";
						}
					else{
						qzoh=this.ParentTreeView.LineImagesFolderUrl+"/rminus.gif";
						qzoi=this.ParentTreeView.LineImagesFolderUrl+"/rplus.gif";
						};
					}
				else if(qzhb){
					qzoh=this.ParentTreeView.LineImagesFolderUrl+"/lminus.gif";
					qzoi=this.ParentTreeView.LineImagesFolderUrl+"/lplus.gif";
					}
				else{
					qzoh=this.ParentTreeView.LineImagesFolderUrl+"/tminus.gif";
					qzoi=this.ParentTreeView.LineImagesFolderUrl+"/tplus.gif";
					};
				}
			else{
				if(qzhb){
					qzoh=this.ParentTreeView.LineImagesFolderUrl+"/lminus.gif";
					qzoi=this.ParentTreeView.LineImagesFolderUrl+"/lplus.gif";
					}
				else{
					qzoh=this.ParentTreeView.LineImagesFolderUrl+"/tminus.gif";
					qzoi=this.ParentTreeView.LineImagesFolderUrl+"/tplus.gif";
					};
				};
			}
		else{
			if(this.ParentTreeView.ExpandCollapseImageHeight>0)
				qzxa=this.ParentTreeView.ExpandCollapseImageHeight;
			if(this.ParentTreeView.ExpandCollapseImageWidth>0)
				qzzu=this.ParentTreeView.ExpandCollapseImageWidth;
			qzoh=this.ParentTreeView.CollapseImageUrl;
			qzoi=this.ParentTreeView.ExpandImageUrl;
			};
		if(qzoh!=''&&qzoi!=''){
			qqZi=true;
			};
		qza[qza.length]="<img onclick=\"ComponentArt_CancelEvent(event);ComponentArt_ExpandCollapse("+this.StorageIndex+",'"
											+this.ParentTreeView.TreeViewID+"',"+this.qzcu+")\"";
		if(qzxa>0){
			qza[qza.length]=" height=\""+qzxa+"\"";
			};
		if(qzzu>0){
			qza[qza.length]=" width=\""+qzzu+"\"";
			};
		if(this.Expanded){
			qza[qza.length]=" style=\"display: none;\"";
			};
		qza[qza.length]=" src=\""+qzoi+"\" />";
		qza[qza.length]="<img onclick=\"ComponentArt_CancelEvent(event);ComponentArt_ExpandCollapse("+this.StorageIndex+",'"
											+this.ParentTreeView.TreeViewID+"',"+this.qzcu+")\"";
		if(qzxa>0){
			qza[qza.length]=" height=\""+qzxa+"\"";
			};
		if(qzzu>0){
			qza[qza.length]=" width=\""+qzzu+"\"";
			};
		if(!this.Expanded){
			qza[qza.length]=" style=\"display: none;\"";
			};
		qza[qza.length]=" src=\""+qzoh+"\" />";
		}
	else{
		qza[qza.length]="<img";
		if(this.ParentTreeView.ShowLines){
			qqZi=true;
			if(this.ParentTreeView.LineImageHeight>0)
				qza[qza.length]=" height='"+this.ParentTreeView.LineImageHeight+"'";
			if(this.ParentTreeView.LineImageWidth>0)
				qza[qza.length]=" width='"+this.ParentTreeView.LineImageWidth+"'";
			if(this.qzcu==0){
				if(this.StorageIndex==this.ParentTreeView.GetFirstRootNodeIndex()){
					if(qzhb){
						qza[qza.length]=" src='"+this.ParentTreeView.LineImagesFolderUrl+"/dash.gif'";
						}
					else{
						qza[qza.length]=" src='"+this.ParentTreeView.LineImagesFolderUrl+"/r.gif'";
						};
					}
				else if(qzhb){
					qza[qza.length]=" src='"+this.ParentTreeView.LineImagesFolderUrl+"/l.gif'";
					}
				else {
					qza[qza.length]=" src='"+this.ParentTreeView.LineImagesFolderUrl+"/t.gif'";
					};
				}
			else{
				if(qzhb){
					qza[qza.length]=" src='"+this.ParentTreeView.LineImagesFolderUrl+"/l.gif'";
					}
				else{
					qza[qza.length]=" src='"+this.ParentTreeView.LineImagesFolderUrl+"/t.gif'";
					};
				};
			}
		else{
			if(this.ParentTreeView.NoExpandImageUrl!=''){
				if(this.ParentTreeView.ExpandCollapseImageHeight>0)
					qza[qza.length]=" height='"+this.ParentTreeView.ExpandCollapseImageHeight+"'";
				if(this.ParentTreeView.ExpandCollapseImageWidth>0)
					qza[qza.length]=" width='"+this.ParentTreeView.ExpandCollapseImageWidth+"'";
				qza[qza.length]=" src='"+this.ParentTreeView.NoExpandImageUrl+"'";
				qqZi=true;
				}
			else{
				if(this.ParentTreeView.CollapseImageUrl!=''&&this.ParentTreeView.ExpandImageUrl!=''){
					return this.qzvm();
					}
				else{
					qqZi=false;
					};
				};
			};
		qza[qza.length]=">";
		};
	if(!qqZi)
		return '';
	if(!bInnerOnly)
		qza[qza.length]="</td>";

	return qza.join('');
	};
ComponentArt_TreeViewNode.prototype.qzvm=function(iDepth){
	var qza=new Array();
	qza[qza.length]="<td";
	if(this.ParentTreeView.ShowLines){
		var qzsi=this;
		for(var qzba=this.qzcu;qzba>iDepth;qzba--){
			if(!qzsi.ParentNode)
				qzsi.ParentNode=qzsi.GetParentNode();
			qzsi=qzsi.ParentNode;
			}
		;
		if(this.ParentTreeView.LineImageHeight>0)
			qza[qza.length]=" height=\""+this.ParentTreeView.LineImageHeight+"\"";
		if(this.ParentTreeView.LineImageWidth>0)
			qza[qza.length]=" width=\""+this.ParentTreeView.LineImageWidth+"\"";
		qza[qza.length]="><img";
		if(this.ParentTreeView.LineImageHeight>0)
			qza[qza.length]=" height=\""+this.ParentTreeView.LineImageHeight+"\"";
		if(this.ParentTreeView.LineImageWidth>0)
			qza[qza.length]=" width=\""+this.ParentTreeView.LineImageWidth+"\"";
		if(qzsi.qzvn()){
			qza[qza.length]=" src=\""+this.ParentTreeView.LineImagesFolderUrl+"/noexpand.gif\">";
			}
		else{
			qza[qza.length]=" src=\""+this.ParentTreeView.LineImagesFolderUrl+"/i.gif\">";
			};
		}
	else{
		qza[qza.length]=" width=\""+this.Indent+"\"";
		qza[qza.length]="><div style=\"height: 1px; width: "+this.Indent+"px;\">";
		};
	qza[qza.length]="</td>";
	return qza.join('');
	};
ComponentArt_TreeViewNode.prototype.qzuc=function(){
	var qza=new Array(),qzie=this.Nodes();
	for(var qzba=0;qzba<qzie.length;qzba++){
		qza[qza.length]=qzie[qzba].GetHtml();
		}
	;
	return qza.join('');
	};
function qznj(qzm,qzAie,qzAmm){
	for(var qzba=0;qzba<qzAie.length;qzba++){
		var qzau=qzAie[qzba],qzbt=new ComponentArt_TreeViewNode();
		if(qzAmm&&!qzau.getAttribute){
			continue;
			};
		for(var prop=0;prop<qzm.ParentTreeView.qqGo.length;prop++){
			var sValue=qzau.getAttribute(qzm.ParentTreeView.qqGo[prop]);
			if(sValue){
				qzbt[qzm.ParentTreeView.qqGo[prop]]=sValue;
				};
			}
		;
		if(qzbt.ID&&qzbt.ID!=''){
			qzbt.PostBackID='p_'+qzbt.ID;
			};
		if(qze&&qze.ImagesBaseUrl){
			if(qzbt.ImageUrl){
				qzbt.ImageUrl=qze.ImagesBaseUrl+qzbt.ImageUrl;
				};
			if(qzbt.ExpandedImageUrl){
				qzbt.ExpandedImageUrl=qze.ImagesBaseUrl+qzbt.ExpandedImageUrl;
				};
			if(qzbt.MarginImageUrl){
				qzbt.MarginImageUrl=qze.ImagesBaseUrl+qzbt.MarginImageUrl;
				};
			};
		if(qzbt.Selectable&&qzbt.Selectable.toLowerCase&&qzbt.Selectable.toLowerCase()=='false'){
			qzbt.Selectable=false;
			};
		qzbt.Expanded=(qzbt.Expanded&&(qzbt.Expanded.toLowerCase()=='true'));
		qzbt.Checked=(qzbt.Checked&&(qzbt.Checked.toLowerCase()=='true'));
		qzbt.ShowCheckBox=(qzbt.ShowCheckBox&&(qzbt.ShowCheckBox.toLowerCase()=='true'));
		qzbt.EditingEnabled=(qzbt.EditingEnabled&&(qzbt.EditingEnabled.toLowerCase()=='true'));
		qzbt.DraggingEnabled=(qzbt.DraggingEnabled&&(qzbt.DraggingEnabled.toLowerCase()=='true'));
		qzbt.DroppingEnabled=(qzbt.DroppingEnabled&&(qzbt.DroppingEnabled.toLowerCase()=='true'));
		if(qzau.getAttribute('ImageHeight')){
			qzbt.ImageHeight=parseInt(qzbt.ImageHeight);
			}
		else{
			qzbt.ImageHeight=qzm.ImageHeight;
			};
		if(qzau.getAttribute('ImageWidth')){
			qzbt.ImageWidth=parseInt(qzbt.ImageWidth);
			}
		else{
			qzbt.ImageWidth=qzm.ImageWidth;
			};
		if(qzau.getAttribute('LabelPadding')){
			qzbt.LabelPadding=parseInt(qzbt.LabelPadding);
			}
		else{
			qzbt.LabelPadding=qzm.LabelPadding;
			};
		if(qzau.getAttribute('ExtendNodeCell')){
			qzbt.ExtendNodeCell=(qzbt.ExtendNodeCell.toLowerCase()=='true');
			}
		else if(qze){
			qzbt.ExtendNodeCell=qze.ExtendNodeCells;
			};
		if(qzau.getAttribute('Indent')){
			qzbt.Indent=parseInt(qzbt.Indent);
			}
		else if(qze){
			qzbt.Indent=qze.NodeIndent;
			};
		if(qzau.getAttribute('AutoPostBackOnSelect')){
			qzbt.AutoPostBackOnSelect=(qzbt.AutoPostBackOnSelect.toLowerCase()=='true');
			}
		else if(qze){
			qzbt.AutoPostBackOnSelect=qze.AutoPostBackOnSelect;
			};
		if(qzau.getAttribute('AutoPostBackOnExpand')){
			qzbt.AutoPostBackOnExpand=(AutoPostBackOnExpand.toLowerCase()=='true');
			}
		else if(qze){
			qzbt.AutoPostBackOnExpand=qze.AutoPostBackOnExpand;
			};
		if(qzau.getAttribute('AutoPostBackOnCollapse')){
			qzbt.AutoPostBackOnCollapse=(qzbt.AutoPostBackOnCollapse.toLowerCase()=='true');
			}
		else if(qze){
			qzbt.AutoPostBackOnCollapse=qze.AutoPostBackOnCollapse;
			};
		if(qzau.getAttribute('AutoPostBackOnRename')){
			qzbt.AutoPostBackOnRename=(qzbt.AutoPostBackOnRename.toLowerCase()=='true');
			}
		else if(qze){
			qzbt.AutoPostBackOnRename=qze.AutoPostBackOnRename;
			};
		if(qzau.getAttribute('AutoPostBackOnMove')){
			qzbt.AutoPostBackOnMove=(qzbt.AutoPostBackOnMove.toLowerCase()=='true');
			}
		else if(qze){
			qzbt.AutoPostBackOnMove=qze.AutoPostBackOnMove;
			};
		if(qzau.getAttribute('AutoPostBackOnCheckChanged')){
			qzbt.AutoPostBackOnCheckChanged=(qzbt.AutoPostBackOnCheckChanged.toLowerCase()=='true');
			}
		else if(qze){
			qzbt.AutoPostBackOnCheckChanged=qze.AutoPostbackOnCheckChanged
			};
		qzm.AddNode(qzbt);
		if(qzau.childNodes.length>0){
			qznj(qzbt,qzau.childNodes,qzAmm);
			};
		}

	;
	}
;
function ComponentArt_RememberScrollData(qzbu,qzt){
	var qzux=document.getElementById(qzt.TreeViewID+"_ScrollData");

	if(qzux){
		qzux.value=qzbu.scrollLeft+','+qzbu.scrollTop;
		};
	}
;
function qzrb(qzt,qzm,qzcd,qzgo,qzma){
	var qqDa=qqDb(qzm,qzt);
	if(!qzma&&(qzm.ChildIndices.length>0||(qzm.ContentCallbackUrl&&qzm.ContentCallbackUrl!=''))&&(!qqDa||qqDa=='')
			 &&((qzm.Expanded&&qzt.CollapseNodeOnSelect)||(!qzm.Expanded&&qzt.ExpandNodeOnSelect))){
		var qzcu=qzm.CalculateDepth();
		ComponentArt_ExpandCollapse(qzm.StorageIndex,qzt.TreeViewID,qzcu);
		};
	if(!qzm.Selectable)
		return;
	if(qzt.SelectedNode){
		if(!qzt.SelectedNodeDom){
			qzt.SelectedNodeDom=document.getElementById(qzt.TreeViewID+'_item_'+qzt.SelectedNode.StorageIndex);
			};
		if(!qzt.SelectedNodeCellDom){
			qzt.SelectedNodeCellDom=document.getElementById(qzt.TreeViewID+'_item_'+qzt.SelectedNode.StorageIndex+'_cell');
			};
		qzt.SelectedNodeDom.className=qzt.SelectedNode.qzao(false,false,true);
		qzt.SelectedNodeCellDom.className=qzt.SelectedNode.qzao(false,false,false);
		qzt.SelectedNodeDom.classOver=qzt.SelectedNode.qzao(true,false,true);
		qzt.SelectedNodeDom.classNormal=qzt.SelectedNodeDom.className;
		qzt.SelectedNodeCellDom.classOver=qzt.SelectedNode.qzao(true,false,false);
		qzt.SelectedNodeCellDom.classNormal=qzt.SelectedNodeCellDom.className;
		};
	qzt.SelectedNode=qzm;
	qzt.SelectedNodeDom=qzcd;
	qzt.SelectedNodeCellDom=qzgo;
	qzcd.className=qzm.qzao(false,true,true);
	qzgo.className=qzm.qzao(false,true,false);
	qzcd.classOver=qzm.qzao(true,true,true);
	qzcd.classNormal=qzcd.className;
	qzgo.classOver=qzm.qzao(true,true,false);
	qzgo.classNormal=qzgo.className;
	if(qzt.KeyboardEnabled){
		qzAex(qzt,qzm,qzcd);
		};
	if(qzma){
		return;
		};
	var qznx=document.getElementById(qzt.TreeViewID+'_SelectedNode');
	if(qznx){
		qznx.value=qzm.PostBackID;
		};
	if(qzt.ClientSideOnNodeSelect){
		qzm.ResolveAncestors();
		qzt.ClientSideOnNodeSelect(qzm);
		};

	if(qqDa!=''){
		eval(qqDa);
		};
	}
;
function ComponentArt_TreeView_ClientSideMouse(qzAml,storageIndex){
	var qzsz=qze.qzo(storageIndex);
	if(qzAml){
		qze.ClientSideOnNodeMouseOver(qzsz);
		}
	else{
		qze.ClientSideOnNodeMouseOut(qzsz);
		};

	return false;
	}
;
function ComponentArt_HandleTooltip(qzrm,qzbc,qzgc){
	var qzt=qzlh(qzrm),qzq=document.getElementById(qzt.TreeViewID+"_div"),offsetx=0,qzgx=qzbc;
	while(qzgx!=qzq){
		offsetx+=qzgx.offsetLeft;
		qzgx=qzgx.parentNode;
		}
	;

	if(offsetx+qzbc.offsetWidth>qzq.offsetWidth-qzq.scrollLeft){
		var qzz=qzt.qzo(qzgc),qzAgj=qzz.Text;
		qzbc.title=qzAgj;
		};
	}
;
function ComponentArt_HandleStyles(qzbc,qzAml,qzAcb,qzAef){
	if(qzbc.IsEditing||qzbc==qzdt){
		return;
		};
	if(qzAml&&qzdt&&qqQl&&qqQl.DropChildCssClass&&qqQl.DropChildCssClass!=''){
		qzbc.className=qqQl.DropChildCssClass;
		return;
		};
	if(qze&&qze.qzkj==1){
		qze.qzkj=0;
		qze.qzai.onmouseout();
		qze.qzfj.onmouseout();
		};
	if(!qzbc.classNormal){
		qzbc.classNormal=qzAcb;
		};
	if(!qzbc.classOver){
		qzbc.classOver=qzAef;
		};

	if(qzAml){
		qzbc.className=qzbc.classOver;
		}
	else{
		qzbc.className=qzbc.classNormal;
		};
	}
;
function ComponentArt_HandleCheck(qzAiy,postbackId,storageIndex){
	var qzm=qze.qzo(storageIndex);
	qzm.Checked=qzAiy.checked;
	qzm.SaveState();
	if(qze.ClientSideOnNodeCheckChanged){
		qzm.ResolveAncestors();
		qze.ClientSideOnNodeCheckChanged(qzm);
		};

	if(qzm.AutoPostBackOnCheckChanged){
		__doPostBack(qze.ControlId,'CHECK '+qzm.PostBackID+' '+qzm.Checked);
		return;
		};
	}
;
function ComponentArt_HandleClick(treeViewId,storageIndex){
	qze=qzlh(treeViewId);
	var qzcd=document.getElementById(treeViewId+'_item_'+storageIndex),
			qzgo=document.getElementById(treeViewId+'_item_'+storageIndex+'_cell');
	if(qze){
		var qzm=qze.qzo(storageIndex);
		if(qzm.EditingEnabled&&qze.SelectedNode&&qze.SelectedNode.StorageIndex==qzm.StorageIndex&&!qzm.IsEditing){
			qzAho(qzgo);
			qze.SelectedNode.IsEditing=true;
			return;
			}
		else {
			qzrb(qze,qzm,qzcd,qzgo);
			};
		};

	return false;
	}
;
function ComponentArt_HandleRightClick(qzim,storageIndex){
	if(document.all){
		if(qzim.button!=2){
			return true;
			};
		}
	else{
		if(qzim.which!=3){
			return true;
			};
		};
	var qzm=qze.qzo(storageIndex);
	qzm.ResolveAncestors();
	qze.OnContextMenu(qzm,qzim);
	ComponentArt_CancelEvent(qzim);
	return false;
	}
;
function ComponentArt_SetActiveTree(qzwz){
	qze=qzwz;
	}
;
function qzdu(qzAky){
	return parseInt(qzAky.substring(qzAky.lastIndexOf('_')+1));
	}
;
function qzlh(qzrm){
	return eval(qzrm.replace(':','_').replace('$','_'));
	}
;
var qze=null,ComponentArt_TreeView_Kernel_Loaded=true;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?