Ciao a tutti,
io non sono molto pratico di Javascript e ho un dubbio. Io vorrei farmi una rotazione di immagini in background in una pagina XHTML e mi piacerebbe che cambiassero con effetto sfumato.
L'effetto fade in ce l'ho fatta, ma mi piacerebbe creare anche l'effetto contrario. Posto il codice Javascript:
codice:<script type="text/javascript"> <!-- document.write("<style type='text/css'>#bg {visibility:hidden;}</style>"); function initImage() { imageId = 'bg'; image = document.getElementById(imageId); setOpacity(image, 0); image.style.visibility = "visible"; fadeIn(imageId,0); } function fadeIn(objId,opacity) { if (document.getElementById) { obj = document.getElementById(objId); if (opacity <= 100) { setOpacity(obj, opacity); opacity += 10; window.setTimeout("fadeIn('"+objId+"',"+opacity+")", 100); } } } function setOpacity(obj, opacity) { opacity = (opacity == 100)?99.999:opacity; // IE/Win obj.style.filter = "alpha(opacity:"+opacity+")"; // Safari<1.2, Konqueror obj.style.KHTMLOpacity = opacity/100; // Older Mozilla and Firefox obj.style.MozOpacity = opacity/100; // Safari 1.2, newer Firefox and Mozilla, CSS3 obj.style.opacity = opacity/100; } //window.onload = function() {initImage()} // --> </script> <script type="text/javascript"> rotatingImages = new Array("images/home/_MG_1077-2.jpg","images/home/IMG_2115.jpg","images/home/IMG_4180.jpg","images/home/IMG_4250.jpg"); imageCount = rotatingImages.length; firstTime = true; duration = "5"; //seconds function rotateImage(){ if (document.getElementById('bg').complete || firstTime){ if (firstTime) { thisImage = Math.floor((Math.random() * imageCount)) firstTime = false }else{ thisImage++ if (thisImage == imageCount) { thisImage = 0 } } document.getElementById('bg').src = rotatingImages[thisImage] setTimeout("rotateImage()", duration * 1000) initImage() } } </script> [...] [img][/img] <script type="text/javascript"> rotateImage(); </script>
Qualcuno sa darmi una dritta?
Grazie a tutti

Rispondi quotando