// JavaScript Document
// from http://www.brainerror.net/scripts_js_blendtrans.php
// *** bug in IE requires that alpha-chaning ID's need to have a width specificly set. ***

function opacity(id, opacStart, opacEnd, millisec) { 
    //speed for each frame 
    var speed = Math.round(millisec / 100); 
    var timer = 100; 

    //determine the direction for the blending, if start and end are the same nothing happens 
    if(opacStart > opacEnd) { 
        for(i = opacStart; i >= opacEnd; i-=5) { 
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            timer++; 
        } 
    } else if(opacStart < opacEnd) { 
        for(i = opacStart; i <= opacEnd; i+=5) 
            { 
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            timer++; 
        } 
    } 
} 

//change the opacity for different browsers. Some commented becouse of slow performance

function changeOpac(opacity, id) { 
    var object = document.getElementById(id).style; 
//    object.opacity = (opacity / 100); 
//    object.MozOpacity = (opacity / 100); 
//    object.KhtmlOpacity = (opacity / 100); 
//    object.filter = "alpha(opacity=" + opacity + ")"; 
} 

//if an element is invisible, make it visible, else make it ivisible 

function shiftOpacity(id, millisec) { 
    if(document.getElementById(id).style.opacity == 0) { 
        opacity(id, 0, 100, millisec); 
    } else { 
        opacity(id, 100, 0, millisec); 
    } 
} 

function currentOpac(id, opacEnd, millisec) { 
    //standard opacity is 100 
    var currentOpac = 100; 
     
    //if the element has an opacity set, get it 
    if(document.getElementById(id).style.opacity < 100) { 
        currentOpac = document.getElementById(id).style.opacity * 100; 
    } 

    //call for the function that changes the opacity 
    opacity(id, currentOpac, opacEnd, millisec) 
} 