var opacityObject = new Array();	
var opacitySpeed = 5;  

// Transparenz eines Elements verändern (Achtung: Problem im IE bei <a>)
function setOpacity(id,opacity) 
{ 				
	if (opacityObject[id] == null) opacityObject[id] = new Object(); 
	clearInterval(opacityObject[id].timer);
	opacityObject[id].currOpacity = opacity;
	opacityObject[id].destOpacity = opacity;
	setOpacity_internal(id,opacity);
}		

// Transparenz mehrerer Elemente verändern
function setOpacityMulti(ids,destOpacity)
{					
	for (var i = 0; i < ids.length; i++) setOpacity(ids[i],destOpacity);
}

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

// Transparenz eines Elements langsam verändern
function animOpacity(id,destOpacity)
{
	if (opacityObject[id] == null) opacityObject[id] = new Object(); 
	clearInterval(opacityObject[id].timer);
	if (opacityObject[id].currOpacity == null) opacityObject[id].currOpacity = 100;
	opacityObject[id].destOpacity = destOpacity;
	opacityObject[id].timer = setInterval("animOpacity_timerCB('"+id+"')",10);
}						

// Transparenz mehrerer Elemente langsam verändern
function animOpacityMulti(ids,destOpacity)
{
	for (var i = 0; i < ids.length; i++) animOpacity(ids[i],destOpacity);
}

function animOpacity_timerCB(id)
{ 				   
	if (opacityObject[id].currOpacity < opacityObject[id].destOpacity)
	{		 
		opacityObject[id].currOpacity += opacitySpeed;
		if (opacityObject[id].currOpacity >= opacityObject[id].destOpacity)
		{
			opacityObject[id].currOpacity = opacityObject[id].destOpacity;
			clearInterval(opacityObject[id].timer);
		}
		setOpacity_internal(id,opacityObject[id].currOpacity);
	}
	else
	{
		opacityObject[id].currOpacity -= opacitySpeed;
		if (opacityObject[id].currOpacity <= opacityObject[id].destOpacity) 
		{
			opacityObject[id].currOpacity = opacityObject[id].destOpacity;
			clearInterval(opacityObject[id].timer);
		}
		setOpacity_internal(id,opacityObject[id].currOpacity);
	}
}

