Firefox中的Javascript图像加载器失败

时间:2015-09-01 14:50:56

标签: javascript image firefox preloader

我正在使用Javascript预加载图片,它在Chrome,IE和Safari中运行良好,但在Firefox中失败并出现以下错误: “NS_ERROR_NOT_AVAILABLE:”

我正在使用以下功能加载图片:

function loadImages(sources, callback) {
  var loadedImages = 0;
  var numImages = 0;
  // get num of sources
  for(var src in sources) {
    numImages++;
  }
  for(var src in sources) {
    images[src] = new Image();
    images[src].onload = function() {
      if(++loadedImages >= numImages) {
        callback();
      }
    };
    images[src].src = sources[src];
  }}

我设置了图像数组并像这样调用图像加载器:

var sources = {
  blockBorder0: 'images/BlockBorder_1.jpg',
  blockBorder1: 'images/BlockBorder_2.jpg' };
loadImages(sources, startRender);

为什么Firefox在所有其他浏览器上运行良好时会失败?我把一些调试语句输出到控制台,我看到for循环加载了Firefox中的所有图像。

1 个答案:

答案 0 :(得分:0)

如果我将callback()更改为callback.apply(),它可以在Firefox中使用。