	function show(){ 
		alert("on loading...");
		document.write("loading...");
	}

	function sref() { 
     alert(document.StyleSheetList.iterm(0).href); 
	}
    
	function createXMLDocument(){
		if (window.ActiveXObject) {
			try {
		      return new ActiveXObject("Microsoft.XMLDOM");
			} catch (e) {}
			try{
				return new ActiveXObject("Msxml2.DOMDocument");
			}catch(e2){
				alert( "new ActiveObject for appendDoc FAIL!");
				return;
			}
		}else{
			try{
				return document.createElement("p");  //new XMLDocument();//document.DOMImplementation.createDocument();     //  //
				//appendDoc = new XMLDocument();	//Create XMLHttpRequest object in non-Microsoft browsers
			}catch(e){
				alert(" new XMLDOM FAIL!");
				return;
			}
		}
	}
	
	function createXMLHTTP(){
		if (window.ActiveXObject) {
			try {
		      return new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {}
			try{
				return new ActiveXObject("Microsoft.XMLHTTP");
			}catch(e2){
				alert( "create XMLHTTP FAIL!");
				return;
			}
		}else{
			try{
				return new XMLHttpRequest();
			}catch(e){
				alert("new XMLHttpRequest FAIL!");
				return;
			}
		}
	}

	function loadXML(url, send){
		//alert(url+"|"+send);
		var xmlHttpRequest = createXMLHTTP();
		var method;
		if( send==null)
			method="GET";
		else
			method="POST";			//response maybe status 412 error if POST null;
		xmlHttpRequest.open( method, url, false);
		//if(send!=null)
			//xmlHttpRequest.setRequestHeader("Content-Length", send.length);
		xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); //effective to POST
		xmlHttpRequest.send(send);
		if(xmlHttpRequest.readyState == 4 ){
			if(xmlHttpRequest.status == 200)
				try{
					return  xmlHttpRequest.responseXML;
				}catch(e){
					alter( xmlHttpRequest.responseText);
				}
			else
				alert("loadXML status=" + xmlHttpRequest.status);
		}else
			alert("loadXML readyState fail!");
	}

var OnePageNum;
var PageNum=1;
var XMLPages=1;
var source;
var stylesheet,curPage;
var count, isBottom=false;
var sortXSL;
var lastId=0;
var qryUrl;
var postContent;
var xsltProcessor;

function window_onload(url, content, sheet){
	qryUrl=url;
	//var aaa= loadXML("test/test.jsp", "handler=金卫东");  return
	stylesheet = loadXML(sheet, null);  //document.XSLDocument;
	source=	loadXML(qryUrl, content);	//document.XMLDocument;
	postContent = content.replace("FIRST=","");
	//sortXSL= loadXML("sort.xsl",null);

	if( document.implementation.hasFeature("XPath", "3.0") )
	{
		xsltProcessor = new XSLTProcessor();
		xsltProcessor.importStylesheet( stylesheet );
		XMLDocument.prototype.selectNodes = function(cXPathString, xNode)
		{
			if( !xNode ) { xNode = this; } 
	
			var oNSResolver = this.createNSResolver(this.documentElement)
			var aItems = this.evaluate(cXPathString, xNode, oNSResolver, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null)
			var aResult = [];
			for( var i = 0; i < aItems.snapshotLength; i++)
			{
				aResult[i] =  aItems.snapshotItem(i);
			}
			
			return aResult;
		}
		XMLDocument.prototype.selectSingleNode = function(cXPathString, xNode)
		{
			if( !xNode ) { xNode = this; } 
	
			var xItems = this.selectNodes(cXPathString, xNode);
			if( xItems.length > 0 )
			{
				return xItems[0];
			}
			else
			{
				return null;
			}
		}
	
		Element.prototype.selectNodes = function(cXPathString)
		{
			if(this.ownerDocument.selectNodes)
			{
				return this.ownerDocument.selectNodes(cXPathString, this);
			}
			else{throw "For XML Elements Only";}
		}
	
		Element.prototype.selectSingleNode = function(cXPathString)
		{	
			if(this.ownerDocument.selectSingleNode)
			{
				return this.ownerDocument.selectSingleNode(cXPathString, this);
			}
			else{throw "For XML Elements Only";}
		}
	}

	//document.getElementById("cnt").innerHTML += source.selectSingleNode("/news/@count").value;
	stylesheet.selectSingleNode("//label[@id='cnt']").firstChild.data += source.selectSingleNode("/newses/@count").value;
	curPage=stylesheet.selectSingleNode("/*/xsl:variable[@name='page']/@select");
	//qryUrl= source.getElementsByTagName("news")[0].getAttribute("qryUrl");		//source.documentElement.selectSingleNode("/news/@qryUrl").value;
	OnePageNum=stylesheet.selectSingleNode("/*/xsl:variable[@name='lenPerPage']/@select").value;
	
	//If you have a blank whitespace between HTML/xml tags, the browser calls that a text node. IE and Fx differ on when they think whitespace counts as a text node.
	var newses=source.getElementsByTagName("news");		//! in ff: documentElement.lastChild;
	//alert( source.getElementsByTagName("news")[0].childNodes.length );
	if( newses.length==0 )
		isBottom = true;
	else{
		var lastChild = newses[newses.length-1];
		//alert(lastChild.nodeName);
		lastId= lastChild.getElementsByTagName("id")[0].firstChild.data;  //getAttribute("id"); 
	}
	//alert(lastId);
	//qryUrl.replace("&amp;", "&");
	workoutPages( newses.length );
	pages(1);	//as param:pages be altered to be constant
}

function atPage(row){
	for(i=0;i<(row/OnePageNum);i++)  ;
   return i;
}

function workoutPages( length ){
	XMLPages= atPage( length );
	stylesheet.selectSingleNode("/*/xsl:variable[@name='pages']/@select").value=XMLPages;
	//err! 方法未知：function:  curPage=stylesheet.selectSingleNode("/*/xsl:template[@match='BlueIdea']//xsl:apply-templates/@select[ starts-with(text(),'team') ]");
}

function taxis(name, type)
{ 
	var sortField=sortXSL.selectSingleNode("//xsl:sort/@select").value;
	var order=sortXSL.selectSingleNode("//xsl:sort/@order").value;
	var data_type=sortXSL.selectSingleNode("//xsl:sort/@data-type").value;
	if( sortField==name){
		if( order=="descending")
			order="ascending";
		else
			order="descending";
	}else{
		sortField = name;
		order = "ascending";
	}
	if( type==0)
		data_type = "text";
	else
		data_type = "number";
	sortXSL.selectSingleNode("//xsl:sort/@select").value=sortField;
	sortXSL.selectSingleNode("//xsl:sort/@order").value=order;
	sortXSL.selectSingleNode("//xsl:sort/@data-type").value=data_type;
	
	if(window.ActiveXObject){
		source.transformNodeToObject( sortXSL, source);
		Layer1.innerHTML = source.transformNode(stylesheet);
	}else{
		var news = source.getElementsByTagName("news")[0];
		var parentDom = news.parentNode;
		alert( sortXSL.selectSingleNode("//xsl:sort/@select").value+":"+ sortXSL.selectSingleNode("//xsl:sort/@order").value);
		var sortProcessor = new XSLTProcessor();
		sortProcessor.importStylesheet( sortXSL );
		var dom = sortProcessor.transformToDocument( source );
		var newNews = dom.getElementsByTagName("news")[0];
		//alert( "newnews0="+newnews.getElementsByTagName("mal")[0].getAttribute("id"));
		parentDom.removeChild( news );
		parentDom.appendChild( newNews.parentNode.removeChild( newNews ) );

		var div = document.getElementById("Layer1");
		for(i=div.childNodes.length-1; i>=0; i-- )
			div.removeChild(div.childNodes[i]);
		div.appendChild( xsltProcessor.transformToFragment( source, document ) );
	}
}

function pages(Num){
	var firstNum=0;	
	var lastNume=0;	
	if(Num>0&&Num<=XMLPages) PageNum=Num;
	if (Num=="first") {PageNum=1;}	
	if (Num=="previous") {if (PageNum>1) PageNum -=1;}	
	if (Num=="next") {
		if(PageNum==XMLPages){
			if(isBottom==true) {alert("浏览完毕！"); return}
	   	var newXML = loadXML(qryUrl, postContent+"&n.id=<"+lastId);  // "queryMal.do", "handler=金卫东"+"&id=<"+lastId);
	   	var otherChilds = newXML.selectNodes("/*/news");
	   	if( otherChilds==null || otherChilds.length==0){
				isBottom=true; alert("浏览完毕！");  return;
			}
			var olen=otherChilds.length;
			lastId= otherChilds[olen-1].getElementsByTagName("id")[0].firstChild.data; //getAttribute("id");
			alert( lastId );
			PageNum = atPage( source.getElementsByTagName("news").length+1 );
			for( i=0; i<olen; i++)
				source.getElementsByTagName("newses")[0].appendChild( otherChilds[i] );
			workoutPages( source.getElementsByTagName("news").length );
		}else 
			PageNum++;
	}
	if (Num=="last") {PageNum =XMLPages;}
	firstNum=OnePageNum*(PageNum-1)+1;
	lastNum=OnePageNum*(PageNum-1)+OnePageNum;
	curPage.value=PageNum;

	if(window.ActiveXObject){
		var div = document.getElementById("Layer1");
		if( div!=null)
			div.innerHTML=source.transformNode(stylesheet);
		else	document.write( source.transformNode(stylesheet));
	}else{
		//Layer1.innerDocument = xsltProcessor.transformToDocument( source );
		var div = document.getElementById("Layer1");
		if(div==null)	div=document;
		for(i=div.childNodes.length-1; i>=0; i-- )
			div.removeChild(div.childNodes[i]);
		div.appendChild( xsltProcessor.transformToFragment( source, document ) );
	}
	
}



