	/**
	 * SinglePlayer中"?"按钮被点击时调用
	 */
	function callback_openHelpPage(){
		//alert("open help page");
	}
	/**
	 * SinglePlayer中"ActiveX"和"麦克风"链接文字被点中时调用
	 */
	function callback_openInstallActiveXPage(){
		//alert("open install active page");
		openDialog();
	}
	/**
	 * SinglePlayer中"测试"链接文字被点中时调用
	 */
	function callback_openMicTestPage(){
		if (isBrowserIE()) enterMicTest();
	}
	/**
	 * SinglePlayer中"X"(关闭)按钮被点中时调用
	 */
	function callback_selfClosed(){
		miniPlayer("singlePlayerContainer", "SinglePlayer");
	}	
	/**
	 * 同过给定的元素id获取对象
	 * @Param
	 *    elementId : 元素id
	 * @Return
	 *    元素id代表的对象
	 */
	function getElementObj(elementId){
		var elementObj = document.getElementById(elementId);
		if (!elementObj) elementObj = document.getElementsByName(elementId)[0];
		return elementObj;
	}
	/**
	 * 获取指定对象的left, top, width, height
	 * @Param
	 *    o : 页面对象
	 * @Return
	 *    指定页面对象的left, top, width, height
	 *    [left, top, width, height]
	 */
	function GetXYWH(o){
		var w3c=(document.getElementById)? true:false;
		var agt=navigator.userAgent.toLowerCase();
		var ie = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1) && (agt.indexOf("omniweb") == -1));
		var ie5=(w3c && ie)? true : false;
		var ns6=(w3c && (navigator.appName=="Netscape"))? true: false;
		var op8=(navigator.userAgent.toLowerCase().indexOf("opera")==-1)? false:true;
		var nLt=0;
		var nTp=0;
		var offsetParent = o;
		while (offsetParent!=null && offsetParent!=document.body) {
			nLt+=offsetParent.offsetLeft;
			nTp+=offsetParent.offsetTop;
			if(!ns6){
				parseInt(offsetParent.currentStyle.borderLeftWidth)>0?nLt+=parseInt(offsetParent.currentStyle.borderLeftWidth):"";
				parseInt(offsetParent.currentStyle.borderTopWidth)>0?nTp+=parseInt(offsetParent.currentStyle.borderTopWidth):"";
			}
			offsetParent=offsetParent.offsetParent;
		}
		return [nLt, nTp, o.offsetWidth, o.offsetHeight];
	}
	/**
	 * 将SinglePlayer最小化到浏览器的左上角
	 * @Param
	 *    playerContainerObj : SinglePlayer的容器Id
	 *    playerId : SinglePlayer的Id
	 */
	function miniPlayer(playerContainerId, playerId){
	    var playerContainerObj = getElementObj(playerContainerId);
	    var playerObj = getElementObj(playerId);
	    
	    playerObj.style["width"] = "0px";
	    playerObj.style["height"] = "0px";
	    playerContainerObj.style["width"] = "0px";
	    playerContainerObj.style["height"] = "0px";	  
	    playerContainerObj.style["left"] = "0px";
	    playerContainerObj.style["top"] = "0px";	  	      
	}
	/**
	 * 将SinglePlayer最大化并定位到指定的对象右边
	 * @Param
	 *    playerContainerObj : SinglePlayer的容器Id
	 *    playerId : SinglePlayer的Id
	 *    targetObj : 指定的对象
	 * @Return
	 *    SinglePlayer对象
	 */
	function maxPlayer(playerContainerId, playerId, targetObj){
	    var playerContainerObj = getElementObj(playerContainerId);
	    var playerObj = getElementObj(playerId);
	    
		var rect = GetXYWH(targetObj);
		playerContainerObj.style["left"] = parseInt(rect[0])+parseInt(rect[2])-13+'px';
		playerContainerObj.style["top"] = parseInt(rect[1])+'px';
	    playerContainerObj.style["width"] = "295px";
	    playerContainerObj.style["height"] = "230px";	
	    playerObj.style["width"] = "295px";
	    playerObj.style["height"] = "230px"; 
	    
	    return playerObj;
	}
	/**
	 * 打开SinglePlayer
	 */
	function openSinglePlayer(evt){
		if(evt==null)evt=window.event;
		var targetObj=evt.srcElement || evt.target;
		var sid = targetObj.getAttribute("sid");
		maxPlayer("singlePlayerContainer", "SinglePlayer", targetObj);
		setTimeout(function(){
			var ssObj = maxPlayer("singlePlayerContainer", "SinglePlayer", targetObj);
			ssObj.loadSentence("", false, sid);
			var bIsIE = isBrowserIE();
			ssObj.openPlayer(true, true, "Random", 1, bIsIE);
		}, 200);
	}
	
	/**
	 * 判断当前浏览器是否是IE
	 */
	function isBrowserIE(){
		var agt=navigator.userAgent.toLowerCase();
		if ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1) && (agt.indexOf("omniweb") == -1)) return true;
		else return false;
	}
	
	/**
	 * 页面被装载完毕后调用
	 */
	function pageOnload(){
			miniPlayer("singlePlayerContainer", "SinglePlayer");
	}
	
/**
 * 
 */
function prepearContainer(width, height){
	var tfObj = null;
	this.prepearSelf = function(){
		var bodyWidth = parseInt(document.body.offsetWidth)+24;
		var bodyHeight = parseInt(document.body.offsetHeight)+24;
		var container = document.getElementById("testContainer");
		container.style["left"] = (bodyWidth-width)/2;
		container.style["top"] = (bodyHeight-height)/2;
		container.style["width"] = width;
		container.style["height"] = height;
		container.style["display"] = "block";
		tfObj = document.getElementById("testFrame");
		tfObj.width=width;
		tfObj.height=height;
	}
	this.prepearSelf();
	window.onresize = function(){
		prepearMask();
		this.prepearSelf();
	}
	return tfObj;
}
function prepearMask(){
	var mask = document.getElementById("mask");
	var bodyWidth = document.body.scrollWidth+24;
	var bodyHeight = document.body.scrollHeight+24;
	mask.style["position"] = "absolute";
	mask.style["left"] = 0;
	mask.style["top"] = 0;
	mask.style["width"] = bodyWidth;
	mask.style["height"] = bodyHeight;
	mask.style["display"] = "block";
}
function closeTest(){
	document.getElementById("mask").style["display"] = "none";
	document.getElementById("testContainer").style["display"] = "none";
	var tfObj = document.getElementById("testFrame");
	tfObj.src = "";
	currentStep = 1;
	window.onresize = null;
}	
function enterMicTest(){
	prepearMask();
	prepearContainer(450, 300).src="MicTest.html";
}