var steps;var the_timeout; var sp1="" var colors = new Array(steps); var color = 0; var text = 0; var step = 1; var a0="" var a1="" hex=255 getFadeColors(bgcolor,fcolor,colors); function fade() { show=sho[text] if(color<(steps-2))var text_out = sp1.replace("{COLOR}", colors[color])+texts[text]+"" else var text_out=sp1.replace("{COLOR}", fcolor)+texts[text]+"" if (document.all) fader.innerHTML = text_out; if (document.getElementById)document.getElementById("fader").innerHTML = text_out; color += step; if (color >= colors.length-1) {step = -1 if (!loop && text >= texts.length-1) return} if (color == 0) {step = 1 text += 1 if (text == texts.length) text = 0 } //if(step == -1)alert("At -1 point the color is "+color) setTimeout("fade()", (color == colors.length-2 && step == -1) ? show : ((color == 1 && step == 1) ? sleep : 50)) } function getFadeColors(ColorA, ColorB, Colors) { len = Colors.length; if (ColorA.charAt(0)=='#') ColorA = ColorA.substring(1); if (ColorB.charAt(0)=='#') ColorB = ColorB.substring(1); var r = HexToInt(ColorA.substring(0,2)); var g = HexToInt(ColorA.substring(2,4)); var b = HexToInt(ColorA.substring(4,6)); var r2 = HexToInt(ColorB.substring(0,2)); var g2 = HexToInt(ColorB.substring(2,4)); var b2 = HexToInt(ColorB.substring(4,6)); var rStep = Math.round((r2 - r) / len); var gStep = Math.round((g2 - g) / len); var bStep = Math.round((b2 - b) / len); for (i = 0; i < len-1; i++) { Colors[i] = "#" + IntToHex(r) + IntToHex(g) + IntToHex(b); r += rStep; g += gStep; b += bStep; } Colors[len-1] = ColorB;Colors[23] = ColorB // make sure we finish exactly at ColorB } function IntToHex(n) { var result = n.toString(16); if (result.length==1) result = "0"+result; return result; } function HexToInt(hex) { return parseInt(hex, 16); }