Preload ne fonctionne pas :(
Posté : 07 mai 2008, 20:25
Bonjour,
Au moment du chargement de ma page j'appelle la fonction suivante :
qui appelle une fonction qui se trouve dans un fichier à part, qui contient le code suivant :
Le code écrit se trouve dans la fonction php suivante :
Mais, quand j'accède à ces images il y a un temps de chargement.
Le problème c'est que ces images ne sont pas "directement" dans la page, elle sont chargée dans un bloc en ajax qui récupère les images a charger avant de modifier la valeur d'un div...
En gros je me demande si le preload peut fonctionner avec cette méthode, je pensais que oui mais quand je charge mon div les images mettent du temps à charger...
quelqu'un aurait il une idée / solution ?
Merci.
Au moment du chargement de ma page j'appelle la fonction suivante :
Code : Tout sélectionner
<body onload="preload();">Code : Tout sélectionner
function preload()
{
//Preload des images du menu
<?php
$j=1;
list_dir("../screenshots",$j);
?>
}function list_dir($name,$j) {
$i=0;
if ($dir = opendir($name)) {
while(false !== ($file = readdir($dir))) {
if(is_file($name.'/'.$file) && in_array(substr(strrchr($file,'.'),1),array("gif","jpg","png")))
{
$i++;
echo "img_".$j."_".$i." = new Image();\n";
echo "img_".$j."_".$i.".src = '".$name.'/'.$file."';\n";
//echo "alert('preloadé: '+img_".$j."_".$i.".src);";
}
if(is_dir($name.'/'.$file) && !in_array($file, array(".",".."))) {
$j++;
list_dir($name.'/'.$file,$j);
}
}
closedir($dir);
}
}
Donc voila, j'ai testé avec le alert et ca a l'air de fonctionner donc normalement mes images sont préloadés.Mais, quand j'accède à ces images il y a un temps de chargement.
Le problème c'est que ces images ne sont pas "directement" dans la page, elle sont chargée dans un bloc en ajax qui récupère les images a charger avant de modifier la valeur d'un div...
En gros je me demande si le preload peut fonctionner avec cette méthode, je pensais que oui mais quand je charge mon div les images mettent du temps à charger...
quelqu'un aurait il une idée / solution ?
Merci.