var homepageULID = 'homepage_images'; var homepageUL; var homepageImages; var iCurrentImage; var iPreviousImage; var preInitTimer; var fadeDelay = 4000; preInit(); function preInit() { if ((document.getElementById)&&(homepageUL=document.getElementById(homepageULID))) { homepageUL.style.display = "none"; homepageUL.style.visibility = "hidden"; if (typeof preInitTimer != 'undefined') { clearTimeout(preInitTimer); } } else { preInitTimer = setTimeout("preInit()",1); } } function doFade(imgImageNumber,opacity) { var obj = homepageImages[imgImageNumber]; if (obj.style) { if (obj.style.MozOpacity != null) { obj.style.MozOpacity = (opacity / 100) - .001; } else if (obj.style.opacity != null) { obj.style.opacity = (opacity / 100) - .001; } else if (obj.style.filter != null) { obj.style.filter = "alpha(opacity="+opacity+")"; } } } function fadeInit() { if ((document.getElementById)&&(homepageUL=document.getElementById(homepageULID))) { preInit(); homepageImages = new Array; var node = homepageUL.firstChild; while (node) { if (node.nodeType==1) { homepageImages.push(node); } node = node.nextSibling; } for(i = 0; i < homepageImages.length; i++) { homepageImages[i].style.position='absolute'; homepageImages[i].style.top=0; homepageImages[i].style.zIndex=0; doFade(i,0); } homepageUL.style.display = "block"; homepageUL.style.visibility = 'visible'; iCurrentImage = 0; iPreviousImage = homepageImages.length - 1; opacity = 100; doFade(iCurrentImage,100); //only start if there are enough homepage images to loop through if(homepageImages.length > 1) { window.setTimeout("doCrossFade(100)", fadeDelay); } } } function doCrossFade(opacity) { if (opacity < 100) { doFade(iCurrentImage,opacity); opacity += 3; window.setTimeout("doCrossFade("+opacity+")", 40); } else { doFade(iPreviousImage,0); iPreviousImage = iCurrentImage; iCurrentImage += 1; if (iCurrentImage >= homepageImages.length) { iCurrentImage = 0; } homepageImages[iPreviousImage].style.zIndex = 0; homepageImages[iCurrentImage].style.zIndex = 100; opacity = 0; window.setTimeout("doCrossFade("+opacity+")", fadeDelay); } } addEvent(window,'load',fadeInit) function addEvent(elm, evType, fn, useCapture) { if (elm.addEventListener) { elm.addEventListener(evType, fn, useCapture); return true; } else if (elm.attachEvent) { var r = elm.attachEvent("on"+evType, fn); return r; } }