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 php : Sélectionner tout - Visualiser dans une fenêtre à part
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
Ce code fonctionne sous FF, chrome et Safari.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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; }
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
Partager