kobaatsu
4/19/2016 - 8:05 AM

複数の画像読み込み後の処理を Deferred で ref: http://qiita.com/kobaatsu/items/343df3f0b93bb9bfb821

複数の画像読み込み後の処理を Deferred で ref: http://qiita.com/kobaatsu/items/343df3f0b93bb9bfb821

var startOnLoadImage = function($target) {
  var d = new $.Deferred();
  var loaded = 0;
  var max = $target.length;
  $target.each(function() {
    var targetObj = new Image();
    $(targetObj).on('load', function(){
      loaded++;
      if (loaded == max){
        d.resolve();
      }
    });
    targetObj.src = this.src;
  });
  return d.promise();
};
$img = $('#sakiNiYonde .image');
startOnLoadImage($img).done(function(){
  // 処理
});
var startOnLoadImage = function ($target){
  var d = new $.Deferred();
  var targets = [];
  var loaded = 0;
  $target.each(function(i, elm) {
    targets[i] = new Image();
    targets[i].src = elm.src;
  });
  $.each(targets, function(){
    $(this).on('load', function(){
      loaded++;
      if (loaded == targets.length){
        d.resolve();
      }
    });
  });
  return d.promise();
};