como remover imagens carregadas dinamicamente em javascript
-
20-09-2019 - |
Pergunta
Estou carregando em 3 imagens (chamado 1.jpg, 2.jpg, 3jpg) dinamicamente para 3 divs chamado "div1", "div2" e "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);
}
}
Isso funciona, mas a parte de remoção que não consigo trabalhar ..
function removeImages() {
for (var i = 1; i < 3; i++ ) {
var oldImages = "a"+i+"";
var divName = "div"+i+"";
document.getElementById(divName).removeChild(oldImages);
}
}
Obrigada.
Solução
Remover,
document.getElementById(divName).removeChild(document.getElementById(oldImages));
removeChild
leva um elemento DOM, não um ID.
Outras dicas
Na sua remoção, "Oldimages" é apenas uma corda dizendo "A1" ou qualquer outra coisa. O parâmetro para .removechild precisa ser um elemento DOM real. Você precisa encontrá -lo novamente (usando document.getElementById ou atravessando os filhos do nó div) ou mantendo as referências ao elemento da imagem.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow