我的装载机出了什么问题?

时间:2014-04-23 12:49:01

标签: javascript

我试图在画布中使用它们之前加载一些图像。我创建了一个等待' onload'然后运行主循环,但有时它不起作用......

这里是代码:

  var imagesSrc = ['paris.jpg','Paris','shanghai5.jpg','Shangai','beijing.jpg','Beijing','brslondon.jpg','London','madrid.jpg','Madrid','luxembourg.jpg','Luxembourg','dubai.jpg','Dubai','geneve.jpg','Geneva','sino.jpg','Shanghai','swaar.jpg','Mumbai','singapore2.jpg','Singapore','hongkong.jpg','Hong Kong'];
  for (var i = imagesSrc.length - 1; i >= 0; i-=2) {
    var image = new Image();
    image.name = imagesSrc[i];
    image.onload = function()
    {
      load++;
      if(load >= imagesSrc.length*0.5){
        ImageGenerator(game , 6000);
      }
    }
    image.src = 'assets/images/illus/'+imagesSrc[i-1];
    game.images.push(image);
  }

对我来说很好......

有人能帮助我吗?

THX!

1 个答案:

答案 0 :(得分:1)

尝试这样做:

  function imgTest(){
      var imagesSrc = ['paris.jpg','Paris','shanghai5.jpg','Shangai','beijing.jpg','Beijing','brslondon.jpg','London','madrid.jpg','Madrid','luxembourg.jpg','Luxembourg','dubai.jpg','Dubai','geneve.jpg','Geneva','sino.jpg','Shanghai','swaar.jpg','Mumbai','singapore2.jpg','Singapore','hongkong.jpg','Hong Kong'];
  for (var i = imagesSrc.length - 1; i >= 0; i-=2) {
  var image = new Image();
  image.name = imagesSrc[i];
  image.onload = function()
  {
  load++;
  if(load >= imagesSrc.length*0.5){
    ImageGenerator(game , 6000);
  }
}
image.src = 'assets/images/illus/'+imagesSrc[i-1];
game.images.push(image);
}
  }

并称之为:

 window.onload=imgTest;
相关问题