treeview_kernel.js

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

JS
1,421
字号
		this.StorageIndex=qzgv.length;
		};

	qzgv[this.StorageIndex]=qzam;
	};
ComponentArt_TreeViewNode.prototype.qzAdg=function(){
	var qzcb=document.getElementById(this.ParentTreeView.TreeViewID+'_ValueChangeEvents');
	if(!qzcb){
		return;
		};
	var qzzv=this.PostBackID+' '+escape(this.Value)+';';
	qzcb.value+=qzzv;
	};
ComponentArt_TreeViewNode.prototype.qzAdh=function(){
	var qzcb=document.getElementById(this.ParentTreeView.TreeViewID+'_EditEvents');
	if(!qzcb){
		return;
		};
	var qzzv=this.PostBackID+' '+escape(this.Text)+';';
	qzcb.value+=qzzv;
	};
ComponentArt_TreeViewNode.prototype.qzAbp=function(){
	var qzcb=document.getElementById(this.ParentTreeView.TreeViewID+'_ExpandedList');
	if(!qzcb){
		return;
		};
	var qzbd;
	if(qzcb.value==''){
		qzbd=new Array();
		}
	else{
		qzbd=qzcb.value.split(',');
		};
	var qzmo=-1;
	for(var qzba=0;qzba<qzbd.length;qzba++){
		if(qzbd[qzba]==this.PostBackID){
			qzmo=qzba;
			break;
			};
		}
	;
	if(this.Expanded){
		if(qzmo<0){
			qzbd[qzbd.length]=this.PostBackID;
			};
		}
	else{
		if(qzmo>=0){
			for(var qzba=qzmo;qzba<qzbd.length;qzba++){
				qzbd[qzba]=qzbd[qzba+1];
				}
			;
			qzbd.length--;
			};
		};

	qzcb.value=qzbd.join(',');
	};
ComponentArt_TreeViewNode.prototype.qzAat=function(){
	var qzcb=document.getElementById(this.ParentTreeView.TreeViewID+'_CheckedList');
	if(!qzcb){
		return;
		};
	var qzes;
	if(qzcb.value==''){
		qzes=new Array();
		}
	else{
		qzes=qzcb.value.split(',');
		};
	var qzmo=-1;
	for(var qzba=0;qzba<qzes.length;qzba++){
		if(qzes[qzba]==this.PostBackID){
			qzmo=qzba;
			break;
			};
		}
	;
	if(this.Checked){
		if(qzmo<0){
			qzes[qzes.length]=this.PostBackID;
			};
		}
	else{
		if(qzmo>=0){
			for(var qzba=qzmo;qzba<qzes.length;qzba++){
				qzes[qzba]=qzes[qzba+1];
				}
			;
			qzes.length--;
			};
		};

	qzcb.value=qzes.join(',');
	};
ComponentArt_TreeViewNode.prototype.qzao=function(bHighlighted,bSelected,bRow){
	if(bSelected){
		if(bHighlighted){
			if(bRow){
				var qzek=this.SelectedHoverRowCssClass;
				if(!qzek||qzek==''){
					qzek=this.ParentTreeView.SelectedHoverNodeRowCssClass;
					};
				if(qzek&&qzek!=''){
					return qzek;
					};
				}
			else{
				var qzfi=this.SelectedHoverCssClass;
				if(!qzfi||qzfi==''){
					qzfi=this.ParentTreeView.SelectedHoverNodeCssClass;
					};
				if(qzfi&&qzfi!=''){
					return qzfi;
					};
				};
			};
		if(bRow){
			var qzfz=this.SelectedRowCssClass;
			if(!qzfz||qzfz==''){
				qzfz=this.ParentTreeView.SelectedNodeRowCssClass;
				};
			if(qzfz&&qzfz!=''){
				return qzfz;
				};
			}
		else{
			var qzib=this.SelectedCssClass;
			if(!qzib||qzib==''){
				qzib=this.ParentTreeView.SelectedNodeCssClass;
				};
			if(qzib&&qzib!=''){
				return qzib;
				};
			};
		}
	else if(bHighlighted){
		if(bRow){
			var qzia=this.HoverRowCssClass;
			if(!qzia||qzia==''){
				qzia=this.ParentTreeView.HoverNodeRowCssClass;
				};
			if(qzia&&qzia!=''){
				return qzia;
				};
			}
		else{
			var qzla=this.HoverCssClass;
			if(!qzla||qzla==''){
				qzla=this.ParentTreeView.HoverNodeCssClass;
				};
			if(qzla&&qzla!=''){
				return qzla;
				};
			};
		};

	if(bRow){
		var qzdm=this.RowCssClass;
		if(!qzdm||qzdm==''){
			qzdm=this.ParentTreeView.NodeRowCssClass;
			};
		return qzdm;
		}
	else{
		var qzdm=this.CssClass;
		if(!qzdm||qzdm==''){
			qzdm=this.ParentTreeView.NodeCssClass;
			};
		return qzdm;
		};
	};
ComponentArt_TreeViewNode.prototype.FetchContent=function(){
	if(!this.ContentCallbackUrl||this.ContentCallbackUrl==''){
		return false;
		};
	var qzzc,qzsz=this,qzdy=document.getElementById(this.ParentTreeView.TreeViewID+'_item_'+this.StorageIndex+'_cell');
	function qzAjj(){
		qzdy.innerHTML=qzsz.qzll();
		}
	;
	function qzzs(){
		if(qzzc.readyState&&qzzc.readyState!=4&&qzzc.readyState!='complete'){
			return;
			};

		qznj(qzsz,qzzc.documentElement.childNodes,(document.all?false:true));
		qzAjj();
		if(qzsz.ChildIndices.length>0){
			var qzn=document.getElementById(qzsz.ParentTreeView.TreeViewID+'_item_'+qzsz.StorageIndex+'_div');
			qzzn(qzsz.ParentTreeView,qzn,qzsz,qzsz.CalculateDepth());
			}
		else{
			qzsz.ContentCallbackUrl=null;
			qzsz.SaveState();
			qzsz.ParentTreeView.Render();
			};
		}
	;
	if(document.implementation&&document.implementation.createDocument){
		qzzc=document.implementation.createDocument("","",null);
		qzzc.onload=qzzs;
		}
	else if(document.all){
		var qzac=this.ParentTreeView.TreeViewID+'_island',qzv=document.getElementById(qzac);
		if(!qzv){
			qzv=document.createElement('xml');
			qzv.id=qzac;
			document.body.appendChild(qzv);
			};
		if(qzv.XMLDocument){
			qzzc=qzv.XMLDocument;
			qzzc.onreadystatechange=qzzs;
			}
		else {
			return false;
			};
		};
	if(this.ParentTreeView.ContentLoadingImageUrl&&this.ParentTreeView.ContentLoadingImageUrl!=''){
		var qzAeb=this.ParentTreeView.TreeViewID+'_item_'+this.StorageIndex+'_expcol',qzsr=document.getElementById(qzAeb);
		if(qzsr){
			qzsr.childNodes[0].src=this.ParentTreeView.ContentLoadingImageUrl;
			};
		}
	else{
		var qza=new Array();
		qza[qza.length]="<span style=\"";
		qza[qza.length]="font-family: tahoma, arial, verdana, sans-serif;";
		qza[qza.length]="font-size: 11px;";
		qza[qza.length]="border-top: 1px solid #999999;";
		qza[qza.length]="border-left: 1px solid #999999;";
		qza[qza.length]="border-bottom: 1px solid #3f3f3f;";
		qza[qza.length]="border-right: 1px solid #3f3f3f;";
		qza[qza.length]="padding-left: 5px;";
		qza[qza.length]="padding-right: 5px;";
		qza[qza.length]="padding-bottom: 2px;";
		qza[qza.length]="background-color: #ffffff;";
		qza[qza.length]="height: 100%;";
		qza[qza.length]="\">Loading...</span>";
		qzdy.innerHTML=qza.join('');
		};
	qzzc.async=true;
	try{
		qzzc.load(this.ContentCallbackUrl);
		}
	catch(ex){
		qzAjj();
		alert("Data not loaded: "+(ex.message?ex.message:ex));
		}
	;
	return true;
	};
ComponentArt_TreeViewNode.prototype.qzvn=function(){
	if(this.ParentNode){
		return (this.ParentNode.ChildIndices[this.ParentNode.ChildIndices.length-1]==this.StorageIndex);
		}
	else{
		if(this.ParentStorageIndex>=0){
			this.ParentNode=this.GetParentNode();
			return (this.ParentNode.ChildIndices[this.ParentNode.ChildIndices.length-1]==this.StorageIndex);
			}
		else {
			return (this.ParentTreeView.GetLastRootNodeIndex()==this.StorageIndex);
			};
		};
	};
ComponentArt_TreeViewNode.prototype.GetHtml=function(){
	var
		qzmx=((this.ParentTreeView.SelectedNode&&this.ParentTreeView.SelectedNode.StorageIndex==this.StorageIndex)
					 ||(this.ID!=''&&this.ID==this.ParentTreeView.ForceHighlightedNodeID)),
		qzhb=this.qzvn(),
		qzgu=(this.ChildIndices.length>0||(this.ContentCallbackUrl&&this.ContentCallbackUrl!='')),
		qzru=false,
		qza=new Array();
	qza[qza.length]="<table width=\"100%\" cellspacing=0 cellpadding=0 border=0 id='"+this.ParentTreeView.TreeViewID
										+'_item_'+this.StorageIndex+"' class='";
	var qzdm=this.qzao(false,qzmx,true),qzos=this.qzao(true,qzmx,true);
	qza[qza.length]=qzdm;
	qza[qza.length]="'";
	var qqZh=(qzos!=qzdm),
			qqZg=(this.ParentTreeView.ClientSideOnNodeMouseOver||this.ParentTreeView.ClientSideOnNodeMouseOut);
	if(qqZh||qqZg){
		if(qqZh||this.ParentTreeView.ClientSideOnNodeMouseOver){
			qza[qza.length]=" onmouseover=\"";
			if(qqZh){
				qza[qza.length]="ComponentArt_HandleStyles(this,true,'"+qzdm+"','"+qzos+"');";
				};
			if(this.ParentTreeView.ClientSideOnNodeMouseOver){
				qza[qza.length]="ComponentArt_TreeView_ClientSideMouse(true,"+this.StorageIndex+");";
				};
			qza[qza.length]="\"";
			};
		if(qqZh||this.ParentTreeView.ClientSideOnNodeMouseOut){
			qza[qza.length]=" onmouseout=\"";
			if(qqZh){
				qza[qza.length]="ComponentArt_HandleStyles(this,false,'"+qzdm+"','"+qzos+"');";
				};
			if(this.ParentTreeView.ClientSideOnNodeMouseOut){
				qza[qza.length]="ComponentArt_TreeView_ClientSideMouse(false,"+this.StorageIndex+");";
				};
			qza[qza.length]="\"";
			};
		}
	else{
		qza[qza.length]=" onmouseover=\"return false;\"";
		qza[qza.length]=" onmouseout=\"return false;\"";
		};
	if(this.ParentTreeView.OnContextMenu){
		qza[qza.length]=" onmouseup=\"ComponentArt_HandleRightClick(event,"+this.StorageIndex+");\"";
		};
	if(qzdm!=''||qzos!=''){
		qza[qza.length]=" onclick=\"ComponentArt_HandleClick('"+this.ParentTreeView.TreeViewID+"',"+this.StorageIndex
											+");\"";
		qzru=true;
		};
	if(this.ToolTip&&this.ToolTip!=''){
		qza[qza.length]=" title=\""+this.ToolTip+"\"";
		};
	qza[qza.length]="><tr>";
	if(this.ParentTreeView.DisplayMargin){
		qza[qza.length]=this.GetMarginHtml();
		};
	if(!this.ParentTreeView.ExpandCollapseInFront&&(this.Indent>0||this.ParentTreeView.ShowLines)){
		for(var qzba=0;qzba<this.qzcu;qzba++){
			qza[qza.length]=this.qzvm(qzba);
			}
		;
		};
	qza[qza.length]=this.qzzp(qzgu,qzhb);
	if(this.ParentTreeView.ExpandCollapseInFront&&this.Indent>0){
		for(var qzba=0;qzba<this.qzcu;qzba++){
			if(this.ParentTreeView.ShowLines){
				qza[qza.length]="<td><img src='"+this.ParentTreeView.LineImagesFolderUrl+"/noexpand.gif'></td>";
				}
			else{
				qza[qza.length]=this.qzvm(qzba);
				};
			}
		;
		};
	var qzsy=this.qzAey();
	if(qzsy&&qzsy!=''){
		qza[qza.length]="<td align=center valign=center>";
		qza[qza.length]="<img src='"+qzsy+"' id='"+this.ParentTreeView.TreeViewID+"_item_"+this.StorageIndex+"_icon'";
		if(this.ImageHeight>0)
			qza[qza.length]=" height='"+this.ImageHeight+"'";
		if(this.ImageWidth>0)
			qza[qza.length]=" width='"+this.ImageWidth+"'";
		if(!qzru){
			qza[qza.length]=" onclick=\"ComponentArt_HandleClick('"+this.ParentTreeView.TreeViewID+"',"+this.StorageIndex
												+");\"";
			};
		if(this.DraggingEnabled){
			qza[qza.length]=" onmousedown='ComponentArt_StartNodeDrag(event,this);'";
			};
		qza[qza.length]="></td>";
		};
	if(this.ShowCheckBox){
		qza[qza.length]="<td align=center valign=center><input type=checkbox onclick=\"ComponentArt_HandleCheck(this,'"
											+this.PostBackID+"',"+this.StorageIndex+");\"";
		if(this.Checked){
			qza[qza.length]=" checked";
			};
		qza[qza.length]=" name='checker_"+this.PostBackID+"'/></td>";
		};
	qza[qza.length]="<td style=\"padding-left: "+this.LabelPadding+"px;\"";
	if(this.ExtendNodeCell){
		qza[qza.length]=" width=\"100%\"";
		};
	qza[qza.length]="><div id='"+this.ParentTreeView.TreeViewID+"_item_"+this.StorageIndex+"_cell' class='";
	var qzon=this.qzao(false,qzmx,false),qzmb=this.qzao(true,qzmx,false);
	qza[qza.length]=qzon+"'";
	qza[qza.length]=" onmouseover=\"";
	if(this.ToolTip&&this.ToolTip!=''){
		qza[qza.length]="ComponentArt_HandleTooltip('"+this.ParentTreeView.TreeViewID+"',this,"+this.StorageIndex+");";
		};
	qza[qza.length]="ComponentArt_HandleStyles(this,true,'"+qzon+"','"+qzmb+"');\"";
	qza[qza.length]=" onmouseout=\"ComponentArt_HandleStyles(this,false,'"+qzon+"','"+qzmb+"');\"";
	if(!qzru){
		qza[qza.length]=" onclick=\"ComponentArt_HandleClick('"+this.ParentTreeView.TreeViewID+"',"+this.StorageIndex
											+");\"";
		qzru=true;
		};
	qza[qza.length]=" style=\"width: 100%;\"";
	if(this.DraggingEnabled){
		qza[qza.length]=" onmousedown=\"ComponentArt_StartNodeDrag(event,this);\"";
		};
	qza[qza.length]=">"+this.qzll()+"</div></td>";
	if(!this.ExtendNodeCell){
		qza[qza.length]="<td width='100%'></td>";
		};
	qza[qza.length]="</tr></table>";
	if(this.ParentTreeView.ItemSpacing>0){
		qza[qza.length]="<div style=\"width: 100% background-color: red; height: "+this.ParentTreeView.ItemSpacing
											+"px; overflow: hidden\"></div>";
		};
	if(this.Expanded&&this.ChildIndices.length>0){
		qza[qza.length]="<div id='"+this.ParentTreeView.TreeViewID+"_item_"+this.StorageIndex+"_div'>";
		qza[qza.length]=this.qzuc();
		}
	else{
		qza[qza.length]="<div id='"+this.ParentTreeView.TreeViewID+"_item_"+this.StorageIndex
											+"_div' style=\"display: none;\">";
		if(this.ParentTreeView.PreRenderAllLevels){
			qza[qza.length]=this.qzuc();
			};
		};
	qza[qza.length]="</div>";
	return qza.join('');
	};
ComponentArt_TreeViewNode.prototype.GetMarginHtml=function(){
	var qza=new Array();
	qza[qza.length]="<td";
	if(this.ParentTreeView.MarginCssClass!=''){
		qza[qza.length]=" class=\""+this.ParentTreeView.MarginCssClass+"\"";
		};
	qza[qza.length]="><div style=\"width:"+this.ParentTreeView.MarginWidth+"px;\">";
	if(this.MarginImageUrl&&this.MarginImageUrl!=''){
		qza[qza.length]="<img";
		if(this.ParentTreeView.MarginImageWidth&&this.ParentTreeView.MarginImageWidth>0){
			qza[qza.length]=" width=\""+this.ParentTreeView.MarginImageWidth+"\"";
			};
		if(this.ParentTreeView.MarginImageHeight&&this.ParentTreeView.MarginImageHeight>0){
			qza[qza.length]=" height=\""+this.ParentTreeView.MarginImageHeight+"\"";
			};
		qza[qza.length]=" src=\""+this.MarginImageUrl+"\">";
		};
	qza[qza.length]="</div></td>";
	return qza.join('');
	};
ComponentArt_TreeViewNode.prototype.qzAey=function(){
	var qzgu=(this.ChildIndices.length>0||(this.ContentCallbackUrl&&this.ContentCallbackUrl!='')),qzsy=this.ImageUrl;
	if(!qzsy||qzsy==''){
		if(qzgu){
			if(this.Expanded&&this.ParentTreeView.ExpandedParentNodeImageUrl!=''){
				qzsy=this.ParentTreeView.ExpandedParentNodeImageUrl;
				}
			else{
				qzsy=this.ParentTreeView.ParentNodeImageUrl;
				};
			}
		else {
			qzsy=this.ParentTreeView.LeafNodeImageUrl;
			};
		}
	else{
		if(qzgu){
			if(this.Expanded&&this.ExpandedImageUrl&&this.ExpandedImageUrl!=''){
				qzsy=this.ExpandedImageUrl;
				};
			};
		};

	return qzsy;
	};
ComponentArt_TreeViewNode.prototype.qzll=function(){
	var qzmw=document.getElementById(this.ParentTreeView.TreeViewID+'_'+this.PostBackID),
			qxbiz='template_'+this.PostBackID.replace(/[-\/{}]/g,'_'),
			qzjx=eval('this.ParentTreeView.'+qxbiz),
			qzAda="";
	if(qzmw){
		var qzmn=qzmw.innerHTML;
		qzff(qzmw);
		eval('this.ParentTreeView.'+qxbiz+' = \''+escape(qzmn)+'\';');
		qzAda=qzmn;
		}
	else if(qzjx){
		qzAda=unescape(qzjx);
		}
	else {
		qzAda=this.Text;
		};

	return "<nobr>"+qzAda+"</nobr>";

⌨️ 快捷键说明

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