2010-09-14 5 views
1

Dans une page Web, j'ai une grande image à charger et d'autres contenus. Parfois, l'image prend plus de temps à charger et je voudrais suivre cela. Y at-il un moyen par lequel je peux être averti en utilisant Javascript lorsque le navigateur rend complètement l'image?Notification de rendu d'image HTML

EDIT

J'utilise le code suivant pour charger l'image.

<table border="0" style="background-image: url(http://abc.com/abc.jpg);" id="imageDisp"> 
</table> 

un peu plus ACTUALISATION
est-il un moyen simple de savoir combien de temps l'image se rendre? Utilisation du javascript Je reçois une notification que l'image est chargée maintenant, est-il un moyen de savoir quand le chargement de l'image a commencé? Alors que le temps écoulé peut être calculé?

Répondre

4

Vous pouvez accrocher sur l'événement load de l'élément <img>. Par exemple.

<img src="http://upload.wikimedia.org/wikipedia/commons/3/31/Atlantic_hurricane_tracks.jpg" 
    onload="alert('finished!');"> 

Jsfiddle demo.


Mise à jour:

Ensuite, créez new Image() à la place (le navigateur moyen est assez intelligent pour ne pas demander la même image deux fois et plusieurs références pointeront à la même demande d'image):

<script> 
    var img = new Image(); 
    img.src = 'http://upload.wikimedia.org/wikipedia/commons/3/31/Atlantic_hurricane_tracks.jpg'; 
    img.onload = function() { 
     alert('finished!'); 
    } 
</script> 

Another jsfiddle demo (ne pas oublier d'effacer le cache du navigateur, la même image peut être déjà mise en cache :)).

+1

Le seul problème est que j'utilise css pour charger l'image en tant qu'image d'arrière-plan d'une table. – Shamik

+0

Comment utiliser "var image" dans l'étiquette de la table? – Shamik

+0

C'est du JavaScript. Mettez-le dans un '