Link para remover elemento em JavaScript
Suponha que temos um parágrafo. Vamos fazer um link ao lado dele, com o qual este parágrafo poderá ser removido.
Vamos implementar:
<div id="parent">
<p id="elem">texto</p>
<a href="#" id="remove">remover</a>
</div>
let elem = document.querySelector('#elem');
let remove = document.querySelector('#remove');
remove.addEventListener('click', function() {
elem.remove();
});
Observe que no atributo href do link há um #. Se este cerquilha for removido - teremos um redirecionamento pelo link e, como consequência, o recarregamento da página.
Na verdade, a remoção do parágrafo também ocorrerá, mas não notaremos, pois a página será atualizada e tudo voltará à posição inicial.
Para resolver o problema, é necessário prevenir
o redirecionamento pelo link usando preventDefault:
<div id="parent">
<p id="elem">texto</p>
<a href="" id="remove">remover</a>
</div>
let elem = document.querySelector('#elem');
let remove = document.querySelector('#remove');
remove.addEventListener('click', function(event) {
elem.remove();
event.preventDefault(); // cancela o redirecionamento pelo link
});
Resolva de forma independente, sem consultar o meu código, a tarefa descrita.