このようなループで配列から画像を描画しようとしています:
var frames = [];
for(var i=0;i<assets.length;i++){
frames[i] = new Image();
frames[i].onload = function() {
ctx.drawImage(frames[i],10,10);
};
frames[i].src = assets[i];
そしてエラーを取得します:
値を次のいずれにも変換できませんでした: HTMLImageElement、HTMLCanvasElement、HTMLVideoElement。
「frames[i]」が drawImage() に渡される方法が問題を引き起こしているようです。なぜそうなのか、それを行う適切な方法は何ですか? onload 関数が呼び出されるコンテキストでは、変数 "i" は有効ではありませんか?
ありがとう