var FaddingFlag = true; // 用來控制是否繼續 Fadding

// InPos: FaddinDiv 的透明度， 0 - 100
// degree: 透明度的變化值，應為正數
// NextScript: Fadding 結束時要執行的 Script
function StartFadding(FadInCaveName, FadOutCaveName, OuterDivName, InPos, degree, speed, pause, NextScript){
	
	var divCanvasIn = document.getElementById(FadInCaveName);
	var divCanvasOut = document.getElementById(FadOutCaveName);
	var divOuter = document.getElementById(OuterDivName);
	
	
	//置中圖片和調整高度，雖然放在這裡會影響一些效能，但比較方便
	/* 在圖片 Load 時，會調整高度
	AdjustCanvas(divruncanvas, divInnerCanvas)
	AdjustCanvas(divruncanvas, divInnerCanvas)
	Adjustruncanvas(divCanvasOut, divCanvas1, divCanvas2)
	*/
	
	if (InPos < 0){
		InPos = 0;
	}
	
	if(FaddingFlag){		
		if(InPos < 100){
			SetOpacity(divCanvasIn, InPos);
			SetOpacity(divCanvasOut, (100 - InPos));
			InPos += degree;
			//window.status = "InPos: " + InPos;
			window.setTimeout("StartFadding('" + FadInCaveName + "', '" + FadOutCaveName + "', '" + OuterDivName + "', " + InPos + ", " + degree + ", " + speed + ", " + pause + ", '" + NextScript.replace(/\'/g,"\\'") + "') ", speed);
		}
		else{
			SetOpacity(divCanvasIn, 100);
			SetOpacity(divCanvasOut, 0);
			
			//把 divCanvasOut 的內容清空，以免 Flash 跑到最上層
			divCanvasOut.innerHTML='';
			
			InPos += degree;
			//使用方法 : setTimeout(function,millisecond) ; function 不能帶任何參數, 1000 毫秒等於一毫秒
			//每隔一秒就跑一次
			//setTimeout("getCurrentTime()",1000)
			window.setTimeout(NextScript, pause);
		}
	}
	else{
		/* 使用者中止 Fadding */
		SetOpacity(divCanvasIn, 100);
		SetOpacity(divCanvasIn, 0);
		
		// 以目前的照片調整高度
		AdjustruncanvasWithSingleCanvas(divOuter, divCanvasIn)
	}
}

function StopFadding(){
	FaddingFlag = false;
}


/* DIV 調整用 Function */
/* 水平置中圖片 */
function AdjustCanvas(divruncanvas, divInnerCanvas){
	//divInnerCanvas.style.left = ((divruncanvas.offsetWidth - divInnerCanvas.offsetWidth) / 2);
}

/* 調整高度 */
function Adjustruncanvas(divCanvasOut, divCanvas1, divCanvas2){
	//divCanvasOut.style.height = Math.max(divCanvas1.offsetHeight, divCanvas2.offsetHeight);
}

function AdjustruncanvasWithSingleCanvas(divCanvasOut, divCanvas){
	//divCanvasOut.style.height = divCanvas.offsetHeight;
}

/* 設定漸層 */
function SetOpacity(divCanvas, pos){
	if(divCanvas.filters){
		divCanvas.filters.alpha.opacity = pos;
	}
	else if (divCanvas.style.MozOpacity)
	{
		divCanvas.style.MozOpacity = pos / 100;
	}
}