var rgb_beg = [0,0,0];
var rgb_end = [244,142,0];
var over_spd	= 10;
var out_spd		= 20;

document.onmouseover = domouseover;
document.onmouseout  = domouseout;
document.onclick     = doclick;

dualhex = new Array();
hex = ["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];
for (i = 0; i < 256; i++) { 
	dualhex[i] = hex[parseInt(i / 16)] + hex[i % 16];
}

function domouseover() {
	if (document.all && window.event.srcElement.tagName == "A") {
		fade(window.event.srcElement.sourceIndex, 1);
	}
}

function domouseout() {
	if (document.all && window.event.srcElement.tagName == "A") {
		setTimeout("fade('" + window.event.srcElement.sourceIndex + "', 0)", over_spd * over_spd * 2)
	}
}

function doclick() {
	if (document.all && window.event.srcElement.tagName == "A") {
		window.event.srcElement.blur();
	}
}

function fade(element, over) {
	//alert("fading element = " + element);
	if (over) {
		beg = rgb_beg;
		end = rgb_end;
		spd = over_spd;
	} else {
		beg = rgb_end;
		end = rgb_beg;
		spd = out_spd;
	}
	for(i = 0; i <= spd; i++)
	setTimeout("document.all[" + element + "].style.color = '#"
		+ dualhex[Math.floor(beg[0] * ((spd - i) / spd) + end[0] * (i / spd))]
		+ dualhex[Math.floor(beg[1] * ((spd - i) / spd) + end[1] * (i / spd))]
		+ dualhex[Math.floor(beg[2] * ((spd - i) / spd) + end[2] * (i / spd))] + "';",  i * spd);
}


