我想預先加載一些圖像。這裏是我試圖適應我的需求的代碼。使用Javascript預載圖像
function preLoadImages(callback) {
var count = 0;
var loadNext = function() {
var pic = new Image();
pic.onload = function() {
$scope.imagesToLoad[count].image = pic;
count++;
if (count >= $scope.imagesToLoad.length) {
callback();
} else {
loadNext();
}
}
pic.src = '<img src=\'assets' + $scope.imagesToLoad[count].Name1 + "_" +
$scope.imagesToLoad[count].Name2 + "_" + $scope.imagesToLoad[count].Name3 + '.png\'/>';
}
loadNext();
};
我的期望是,當pic.src
設置,我將進入的onload功能,繼續加載我的圖片。但我沒有進入onload。所以,我的問題是,當我們設置src我們實際上是否觸發圖像加載?
感謝
爲什麼你的src像'' fuyushimoya
請參閱@ fuyushimoya的評論。當圖像被瀏覽器完全加載時,不會在加載時發出onload事件。 – marekful
你想在所有圖像加載完成時執行回調嗎? – Syd