J'essaie de créer un type de code de rappel qui s'exécute après qu'une image a été préchargée.Exécuter le code JavaSCript après le préchargement de l'image
Code Mon JS est comme suit:
<script type='text/javascript'>
d=document;
window.onload=function()
{
if (d.images)
{
d.getElementById('preload').style.display='block';
i1=new Image;
i1.src="http://link_to_image";
d.getElementById('preload').style.display='none';
}
}
</script>
Ainsi, dans mon exemple, d.getElementById('preload').style.display='none';
doit être exécuté après que l'image a été complètement chargée dans le cache.
Une aide pour y parvenir? S'il vous plaît seulement des solutions JavaScript autonomes sans exigences de bibliothèque/plugin.
Je viens de découvrir que 'setInterval (" si (i1 .complete) {...} ", 500)' est une bonne solution. Edit: Mais pas aussi bon que les solutions suggérées ci-dessous. – EarthMind
Oui, vous devriez éviter l'argument chaîne de 'setInterval' /' setTimeout'; passer un 'fonction() {...}' à la place de préférence. Il n'y a pas non plus d'attribut 'complete', seulement' readyState' (et c'est non-standard, donc 'onload' est toujours le meilleur). Vous pouvez également perdre le test 'if (document.images)' car le dernier navigateur à ne pas le supporter était Netscape 2! :-) – bobince