Salve a tutti, attraverso il seguente codice visualizzo diverse immagini ogni 5 secondi adoperando l'effetto fade in e out.
Il tutto funziona perfettamente pero' sembra che quando carica l'immagine successiva:
$(this).attr('src', images[index]);
tale caricamento non termina rapidamente e viene rivisualizzata la stessa immagine per qualche secondo invece di visualizzare l'immagine successiva:
$(this).fadeIn('slow', function()...
Questo è cio' che immagino io che avvenga perchè nel ciclo successivo della visualizzazione delle immagini tale problema non si presenta, come se ormai il browse abbia gia' caricato tutte le immagini e quindi esse vengono visualizzate con effetto fade senza problemi.
In pratica, se non mi sono spiegato bene, basta guardare qui per capire subito il problema:
http://www.modugnoweb.altervista.org/News/35.php?CN=35
Gentilmente c'e' un modo per risolvere tale problema? Grazie in anticipo per la risposta
Codice PHP:
<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script>
<script>
var images = new Array();
<?
for ($i=0; $i< sizeof($IMM) ; $i++)
{ ?> images[<?= $i ?>] = "<?= "../" . $IMM[$i] ?>"; <? }
?>
$(document).ready(function()
{
setInterval (rotateImage, 5000);
var index = 1;
function rotateImage()
{
$('.dumbCrossFade img').fadeOut(1000, function()
{
$(this).attr('src', images[index]);
$(this).fadeIn('slow', function()
{
if (index == images.length-1)
{
index = 0;
}
else
{
index++;
}
});
});
}
});
</script>