2010-12-06 7 views

Répondre

9

Vous pouvez utiliser l'événement load comme ceci:

var img = document.getElementById('imgID'); 

// or 

var img = new Image; 

img.onload = function(){ 
    alert('The image has been loaded'); 
    img.src = 'image path here'; 
}; 

Ou lorsque vous utilisez l'événement load du window, les images sont chargées alors:

window.onload = function(){ 
    // everything is loaded now 
}; 
+0

Ceci n'est pas applicable, parce que je ne mets pas un identifiant à l'img, car il n'est pas placé dans un div. mais merci! – mtay

+0

@mtay: Qu'est-ce que tu fais? Est-ce que vous le créez avec 'new Image' par exemple? – Sarfraz

+1

@mtay: Ceci est juste un exemple. Cela fonctionne aussi pour l'objet 'Image'. – jwueller

1

Avec l'aide de cette

var img = new Image(); 
// Create image 

$(img).load(function() { 
    // Image Loaded notification 
}).error(function() { 
    // Error Notification here 
}).attr({ 
    id: "Set Id", 
    src: "Image Source", 
    title: "Title Here", 
    alt: "Alt here" 
}); 
+0

Je pense que vous avez une erreur de syntaxe ici. La fonction de rappel de '.error()' n'a pas de fermeture '}'. – jwueller

4
var myImg = new Image(); 

myImg.onload = function(){ 
    alert('loaded'); 
} 

myImg.src = '../images/someImage.jpg'; 
+4

+1 pour l'idée, mais JavaScript est sensible à la casse. Devrait être onload, pas onLoad. –

2

pure JavaScript solution (pas jQuery) est disponible ici pour les tests: http://jsfiddle.net/Sztxs/1/ (Basé sur les réponses existantes)

Vous pouvez intégrer dans une fonction puis utilisez cette fonction pour précharger au lieu d'avoir à écrire de nouvelles fonctions onload pour chaque image préchargée.

Vous pouvez avoir ce que vous voulez au lieu de l'alerte bien sûr.

Faites-nous savoir si vous avez besoin d'aide supplémentaire. :)

Questions connexes