Då moddar vi lite.
<style type="text/css">
body{ background-color:rgb(180,180,120); }
a { color: rgb(255,0,0); }
</style>
<script language="JavaScript" type="text/javascript">
inactiveColor=new Array(255,0,0);
activeColor=new Array(0,255,0);
currentlink=false; steps=50; currentfade=0;
function fadein(obj){ if(currentlink){ currentlink.style.color="rgb("+inactiveColor.join(",")+")"; clearTimeout(fade); } currentlink=obj; currentfade=0; dofadein(); }
function dofadein(){
var rgb=new Array();
currentfade++;
for(var i=0;i<3;i++){
rgb[i]=inactiveColor[i]+Math.round((activeColor[i]-inactiveColor[i])/steps*currentfade);
}
currentlink.style.color="rgb("+rgb.join(",")+")";
if(currentfade<steps){ fade=setTimeout("dofadein();",20); } else { currentlink=false; }
}
function fadeout(obj){ if(currentlink){ currentlink.style.color="rgb("+inactiveColor.join(",")+")"; clearTimeout(fade); } currentlink=obj; currentfade=steps; dofadeout(); }
function dofadeout(){
var rgb=new Array();
currentfade--;
for(var i=0;i<3;i++){
rgb[i]=inactiveColor[i]+Math.round((activeColor[i]-inactiveColor[i])/steps*currentfade);
}
currentlink.style.color="rgb("+rgb.join(",")+")";
if(currentfade>0){ fade=setTimeout("dofadeout();",20); } else { currentlink=false; }
}
</script>
<a href="#" onMouseover="fadein(this);" onMouseout="fadeout(this);">En länk</a>
<a href="#" onMouseover="fadein(this);" onMouseout="fadeout(this);">en annan länk</a>
<a href="#" onMouseover="fadein(this);" onMouseout="fadeout(this);">en tredje länk</a>
Lägg märke till att stilmallens värde för färg på a och arrayen inactiveColor är samma, d.v.s. default-färgen på länken. Arrayen activeColor innehåller målfärgen på faden. Allt i RGB.
