Preload de beaucoup d'image
Bonjour à tous,
Je me tourne vers vous afin de m'aider sur un problème avec le navigateur IE.
Je cherche à faire une barre de chargement qui vérifie l'avancée du chargement d'un tableau d'image.
Voici le code :
Fichier index.php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| <script type='text/javascript'>
var nbr_image = <?php echo sizeof($listeImage); ?>;
var liste_image= new Array(nbr_image);
var nbr_image_dl = 0;
<?php
for($i=0; $i<sizeof($listeImage); $i++){
echo 'liste_image['.$i.'] = "'.$listeImage[$i].'";';
}
?>
for(var i=0; i<nbr_image; i++){
var image_temp = precharger_image(liste_image[i]);
image_temp.onload = function() {
update();
}
}
</script> |
Fichier JS
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| function update(){
nbr_image_dl++;
var ratio = (nbr_image_dl*100)/nbr_image;
if(ratio< 10){ratio ="00"+ Math.round(ratio);}
else if(ratio< 100){ratio ="0"+ Math.round(ratio);}
else {ratio = 100; }
document.getElementById('loading').innerHTML =ratio+"%";
document.getElementById('barre').style.width = ((nbr_image_dl*120)/nbr_image)+"px";
if(nbr_image_dl == nbr_image){
alert("Fin dl");
}
}
function precharger_image(url) {
var img = new Image();
img.src=url;
return img;
} |
Ce code fonctionne sous FF, chrome et Safari.
Seul IE 6 et IE7 me bloque en restant sur 13% ou 36%, c'est un peu aléatoire.
SI certain on une piste à ce sujet.
Merci