Итак, я пишу javascript, который заменяет изображение по умолчанию, которое заполняет пространство для многочисленных изображений на моей веб-странице. Таким образом, страница загружается намного быстрее. (сценарий запускается с загрузкой тела) все изображения по умолчанию имеют один и тот же класс, и их идентификатор равен имени файла.Javascript Image After Loader
function imgPostLoad(totalpics, placeholder) {
var img = document.createElement('img');
for (var i = 0; i < totalpics; i++) {
var picture = document.getElementsByClassName(placeholder)[i];
img.onload = function (evt) {
picture.src = this.src;
picture.width = this.width;
picture.height = this.height;
}
img.src = "/img/" + picture.getAttribute("id") + ".jpg";
}
}
Это работает, но только для последнего последнего изображения в массиве. Остальные изображения остаются неизменными. Что с этим не так?
Думаю, вам нужно положить 'var img = ..' внутри цикла for. – putvande