【发布时间】:2014-02-02 02:33:30
【问题描述】:
我正在开展一个项目,该项目要求用户将图像加载到画布中,该画布根据他们所做的选择放置在灯箱中。
在用户单击按钮之前不会加载任何图像,然后在 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;
}
在代码中我在设置我的画布元素之前调用它...这个...
preloadImage(url);
setstage(url);
画布有时会及时获取图像来设置我的舞台,但有时不会,所以我有一个空白的舞台:/。有没有办法可以做到这一点并以某种方式解决此图像预加载问题?
【问题讨论】:
-
只需使用图片的
onload事件即可。 -
你能在 preloadimage 中调用 setstage 吗?
-
mmm.. 我想我可以重写代码来做到这一点,是的......你的意思是把 img.onload = function() { // 在这里执行 setstage(url) };在预加载函数中?
标签: javascript html image canvas