


var ENMarginTop, ENMarginBottom, ENTop;
var ENDivName, ENObject, ENCurrentY;

function ENInit(id, mt, mb, tp){
	bw=new browserCheck;
	if (bw.bw) {
		ENDivName = bw.bw5 ? document.all(id) : bw.bw6 ? document.getElementById(id) : 0;
		ENObject = ENDivName.style;
		ENObject.position = 'absolute';
		ENMarginTop = mt ? mt : 0;
		ENMarginBottom = mb ? mb : 0;
		ENCurrentY = ENTop = tp ? tp : ENDivName.offsetTop;
		ENSmoothMove();
	} 
}

function ENSmoothMove(){
	var winh = bw.ie6s ? document.documentElement.clientHeight : (bw.ns6||bw.opera6) ? innerHeight : bw.bw5 ? document.body.clientHeight : 0 ;
	var yt = bw.ie6s ? document.documentElement.scrollTop : bw.bw5 ? document.body.scrollTop : (bw.ns6||bw.opera6) ? window.pageYOffset : 0;
	var divh = ENDivName.offsetHeight;

	if (winh >= ENMarginTop + divh + ENMarginBottom) {
		yt = Math.max(yt + ENMarginTop, ENTop);
	} else {
		var yt1 = Math.max(yt + ENMarginTop, ENTop);
		var f1 = (yt1 > ENCurrentY) ? 1 : 0;
		var yt2 = yt - (divh + ENMarginBottom - winh);
		yt2 = Math.max(yt2, ENTop);
		var f2 = (yt2 < ENCurrentY) ? 1 : 0;
		if (f1 && f2) yt = ENCurrentY;
		else yt = f2 ? Math.max(yt1, yt2) : Math.min(yt1, yt2);
	}

	if (yt != ENCurrentY) {
		var vy = (yt - ENCurrentY) * 0.25;
		if (Math.abs(vy) < 1) vy = (vy > 0) ? 1 : (vy < 0) ? -1 : 0;
		ENCurrentY += Math.round(vy);
		ENObject.top = ENCurrentY + 'px';
	}
	setTimeout('ENSmoothMove()', 20);
}

