我正在处理一个项目,该项目需要用户将图像加载到放置在基于选择的灯箱中的画布上。JavaScript预加载窗口加载后的图像
用户点击一个按钮之前,然后在XHR请求的图像的URL被接收..
我有加载图像的问题和推迟随后的代码的执行的图像没有被加载...
我的图像加载函数看起来像这样..
function preloadImage(url){
var img = new Image();
if (!img.complete) {
console.log('not complete');
//return false;
}
if (typeof img.naturalWidth != "undefined" && img.naturalWidth == 0) {
console.log('no width');
//return false;
}
img.onerror='Image failed to load...';
img.src = url;
}
并在代码中,我把它叫做之前,我把我的canvas元素...这...
preloadImage(url);
setstage(url);
画布有时会得到形象以及时设置我的舞台,但有时候不是这样,我有一个空白的舞台:/。有没有办法可以做到这一点,并以某种方式解决这个图像预加载问题?
只需使用图像的'onload'事件。 – meagar
你可以在preloadimage中调用setstage吗? – pathfinder
mmm ..我想我可以重写代码来做到这一点,是的...你的意思是把img.onload = function(){//在这里执行setstage(url)};在预加载功能? – GRowing