簡體   English   中英

如何縮短此圖像加載過程?

[英]How do I shorten this image loading process?

此代碼為javascript應用程序加載圖片:

var sampleImage = new Image();
sampleImage.ready = false;
sampleImage.onload = setAssetReady;
sampleImage.src = IMAGE_FILE;

function setAssetReady(){
this.ready = true;
}

我想找出一種方法,使每個使用的圖像不使用四行代碼。

我使用了答案建議的這種方式(除非我做錯了):

var sampleImage = new Image();
sampleImage = loadTheImage(imageFile);

function loadTheImage(imageFile){
this.ready = false;
this.onload = setAssetReady;
this.src = imageFile;
}

function setAssetReady(){
this.ready = true;
}

圖像未成功加載,並且在代碼中不同位置的if語句中對sampleImage.ready進行了評估時,返回了一條錯誤消息:

無法讀取未定義的屬性“就緒”

再說一次,我要對許多圖像執行此過程,所以我只希望為每行寫一兩行代碼,而不是原來的四行。 或者,如果您建議進行其他任何處理。

function loadTheImage(imageFile){
    sampleImage.ready = false;
    sampleImage.onload = setAssetReady;
    sampleImage.src = imageFile;
};
function setAssetReady(){
    this.ready = true;
};

然后只需為每個圖像調用loadTheImage

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM