我正在處理一個項目,該項目需要用戶將圖像加載到放置在基於選擇的燈箱中的畫布上。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