2009-05-28 8 views
0

Je suis en train de précharger environ 150 images et je veux être en mesure de pouvoir faire deux choses ...ennuis Avoir préchargement des images avec javascript

1) Les images sont préchargé à l'aide d'une liste de fichiers des noms. Tous les noms de fichiers de la liste ne possèdent pas de fichier correspondant. Par exemple) pic04.jpg peut ne pas exister, même si elle est dans la liste. Donc, quand je suis en train de précharger, je voudrais savoir si oui ou non l'image existe, si possible. 2) Actuellement, la fonction précharge simplement les 150 images en utilisant images [i] = new Image(); images [i] .src = "chemin/vers/mon/images /" + imageName [i] + ".jpg";

La fonction s'exécute extrêmement rapidement, mais les images ne semblent pas avoir été préchargées. Dois-je faire quelque chose pour que le site attende jusqu'à ce que les images soient chargées avant de continuer?

Des idées?

+0

Que signifie "ne semble pas"? Avez-vous testé qu'ils sont préchargés ou non? Aussi, je posterais le code complet en utilisant le préchargement. Cette question ne fournit pas assez d'informations pour y répondre. – jfar

+0

À quoi servent vos images? Votre problème pourrait être partiellement résolu en faisant de grandes images avec toutes les images que vous souhaitez précharger, mais cela dépend du type d'images avec lesquelles vous travaillez, et pour quoi faire. –

Répondre

1

La fonction s'exécute extrêmement rapidement, mais les images ne semblent pas avoir été préchargées.

Les images sont chargées de manière asynchrone. La fonction termine son exécution mais le navigateur continue de charger les images en arrière-plan

Donc, quand je suis en train de précharger, je voudrais savoir si l'image existe ou non, si possible.

oui, c'est possible. Vous pouvez utiliser le gestionnaire d'événement onerror sur l'objet Image

var img = new Image(); 
img.onerror=function(){alert('error: '+this.src);} 
img.onload=function(){alert('image loaded: '+this.src);} 
img.src='path/to/image.jpg'; 
Questions connexes