image.onload在图像完全加载之前触发 [英] image.onload fires before image is completely loaded
本文介绍了image.onload在图像完全加载之前触发的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用javascript + canvas开发游戏.我使用以下代码来确保
I''m making a game using javascript + canvas. I use the code below to ensure
var imgLoaded = 0;
var imgToLoad = multiImgs;
var onImgLoad = function()
{
imgLoaded++;
if(imgLoaded == imgToLoad)
{
ctx.drawImage()
}
}
for(var i = 0; i < multiImgs; i++)
{
images[i] = new Image();
images[i]. önload = onImgLoad();
images[i].src = ''images/''+i+''.png'';
}
这段代码有时可以正常工作,尤其是.当图像被缓存时.但是,第一次加载时,有时会给出INDEX_SIZE_ERR:我发现是由于高度&导致的DOM异常1.图像宽度不可用...但是只有在加载所有图像后才在这里调用drawImage吗?
该错误主要发生在移动设备中
This code at times works fine, esp. when the images are cached. However, when loading for the first time, at times, it gives INDEX_SIZE_ERR: DOM Exception 1 which I found is due to height & width of image not being available... but then here drawImage is called only when all the images are loaded?
The error primarily occurs in mobile devices
推荐答案
我找到了答案
实际上这是我的编码错误-
代替
I found the answer
Actually it was a coding error on my part -
instead of
images[i].onload = onImgLoad();
应该是
it should be
images[i].onload = onImgLoad;
这篇关于image.onload在图像完全加载之前触发的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文