Canvas drawImage数组错误

时间:2017-12-09 23:49:50

标签: javascript html5 image canvas html5-canvas

*更新并提供问题的链接我参考If I load multiple images with the for loop, do I only need one img.onload function?
我想引入许多图像文件,通过所有图像的数组在画布中使用(这样他们在我需要之前加载),使用在这里找到的解决方案我收到错误

“未捕获的TypeError:无法读取未定义的属性'drawImage'     在图像。 (app.js:32)“第32行是canvasContext [value] .drawImage(images [i],0,0);


显然,我不明白解决方案,因为我对导致这种情况的原因感到茫然 最终结果是我在加载时设置所有图像,然后在我的绘图函数中,声明它们的位置和大小。

window.onload = function() {
console.log(keysDown);
canvas = document.getElementById('myCanvas');
canvasContext = canvas.getContext('2d');
var images = ['Frylock.png', 'Master_Shake.png'];

// Assign onload handler to each image in array
for (var i = 0; i <= images.length; i++) {

    var img = new Image();
    img.onload = (function(value) {
        return function() {
            canvasContext[value].drawImage(images[i], 0, 0);
        }
    })(i);

    // IMPORTANT - Assign src last for IE
    img.src = './' + images[i];
}

0 个答案:

没有答案