Как удалить динамически загружаемые изображения в JavaScript - PullRequest
0 голосов
/ 18 марта 2010

Я загружаю в 3 изображения (названные 1.jpg, 2.jpg, 3jpg) динамически в 3 div, называемых "div1", "div2" и "div3".

function loadImages() {

for (var i = 1; i < 3; i++ ) {
var img = document.createElement("img");
    img.src = "vegetables/"+i+".jpg";
    img.id = "a"+i+"";
    var divName = "div"+i+"";
    document.getElementById(divName).appendChild(img);
}

}

Это работает, но удаление части, которую я не могу заставить работать ..

function removeImages() {

for (var i = 1; i < 3; i++ ) {
    var oldImages = "a"+i+"";  
    var divName = "div"+i+"";
    document.getElementById(divName).removeChild(oldImages);
}

}

Спасибо.

Ответы [ 2 ]

2 голосов
/ 18 марта 2010

В удалении,

document.getElementById(divName).removeChild(document.getElementById(oldImages));

removeChild принимает элемент DOM, а не ID.

0 голосов
/ 18 марта 2010

В вашем удалении "oldImages" - это просто строка с надписью "a1" или что-то еще. Параметр .removeChild должен быть фактическим элементом DOM. Вам нужно либо найти его снова (используя document.getElementById или путем обхода дочерних элементов узла div), либо сохранить ссылки на элемент изображения.

...