var startOpacity=50; // Starting opacity: Percentage
var fadeInRate=0.1; // Complete fade-in rate of photos: Seconds; Sometimes laggy
var fadeOutRate=fadeInRate*20; // Complete fade-out rate of photos: Seconds; Sometimes laggy

var app=window.navigator.appName;

function resetAlpha()
{
var images=document.getElementsByTagName("img");
for (i=0;i<images.length;i++)
if (images[i].id.indexOf("photo_")==0)
{
if (app=="Microsoft Internet Explorer") images[i].style.filter="alpha(opacity="+startOpacity+");";
else if (app=="Netscape") images[i].style.MozOpacity=startOpacity/100;
else images[i].style.opacity=startOpacity/100;
images[i].onmouseover=new Function("incAlpha(this.id);");
images[i].onmouseout=new Function("decAlpha(this.id);");
}
}

function incAlpha(target) { document.getElementById(target).status="inc";increment(target); }
function decAlpha(target) { document.getElementById(target).status="dec";decrement(target); }

function increment(target)
{
target=document.getElementById(target);
if (target.status=="inc")
{
if (app=="Microsoft Internet Explorer"&&target.filters.alpha.opacity<100)
{
target.filters.alpha.opacity+=(100-startOpacity)/10;
window.setTimeout("increment('"+target.id+"');",fadeInRate*10000/(100-startOpacity));
}
else if (app=="Netscape"&&target.style.MozOpacity<1)
{
target.style.MozOpacity=parseFloat(target.style.MozOpacity)+(100-startOpacity)/1000;
window.setTimeout("increment('"+target.id+"');",fadeInRate*10000/(100-startOpacity));
}
else if (target.style.opacity<1)
{
target.style.opacity=parseFloat(target.style.opacity)+(100-startOpacity)/1000;
window.setTimeout("increment('"+target.id+"');",fadeInRate*10000/(100-startOpacity));
}
else target.status="none";
}
}

function decrement(target)
{
target=document.getElementById(target);
if (target.status=="dec")
{
if (app=="Microsoft Internet Explorer"&&target.filters.alpha.opacity>startOpacity)
{
target.filters.alpha.opacity-=(100-startOpacity)/10;
window.setTimeout("decrement('"+target.id+"');",fadeOutRate*10000/(100-startOpacity));
}
else if (app=="Netscape"&&target.style.MozOpacity>startOpacity/100)
{
target.style.MozOpacity=parseFloat(target.style.MozOpacity)-(100-startOpacity)/1000;
window.setTimeout("decrement('"+target.id+"');",fadeOutRate*10000/(100-startOpacity));
}
else if (target.style.opacity>startOpacity/100)
{
target.style.opacity=parseFloat(target.style.opacity)-(100-startOpacity)/1000;
window.setTimeout("decrement('"+target.id+"');",fadeOutRate*10000/(100-startOpacity));
}
else target.status="none";
}
}