Checking For Multiple Images Loaded
Answer :
If you want to call a function when all the images are loaded, You can try following, it worked for me
var imageCount = images.length; var imagesLoaded = 0;  for(var i=0; i<imageCount; i++){     images[i].onload = function(){         imagesLoaded++;         if(imagesLoaded == imageCount){             allLoaded();         }     } }  function allLoaded(){     drawImages(); }  Can't you simply use a loop and assign the same function to all onloads?
var myImages = ["green.png", "blue.png"];  (function() {   var imageCount = myImages.length;   var loadedCount = 0, errorCount = 0;    var checkAllLoaded = function() {     if (loadedCount + errorCount == imageCount ) {        // do what you need to do.     }   };    var onload = function() {     loadedCount++;     checkAllLoaded();   }, onerror = function() {     errorCount++;     checkAllLoaded();   };       for (var i = 0; i < imageCount; i++) {     var img = new Image();     img.onload = onload;      img.onerror = onerror;     img.src = myImages[i];   } })();  Use the window.onload which fires when all images/frames and external resources are loaded:
window.onload = function(){   // your code here........ };   So, you can safely put your image-related code in window.onload because by the time all images have already loaded.
More information here.
Comments
Post a Comment