Odkaz na odstránenie prvku v JavaScripte

Majme odsek. Poďme vedľa neho vytvoriť odkaz, pomocou ktorého bude možné tento odsek odstrániť.

Realizujme:

html<div id="parent">
  <p id="elem">text</p>
  <a href="#" id="remove">odstrániť</a>
</div>
javascriptlet elem   = document.querySelector('#elem');
let remove = document.querySelector('#remove');

remove.addEventListener('click', function() {
  elem.remove();
});

Všimnite si, že v atribúte href odkazu je #. Ak túto mriežku odstránime - dostaneme prechod na odkaz a následne obnovenie stránky.

V skutočnosti sa odstránenie odseku tiež uskutoční, ale nevšimneme si to, pretože stránka sa obnoví a všetko sa vráti do pôvodného stavu.

Na vyriešenie problému je potrebné zabrániť prechodu na odkaz pomocou preventDefault:

html<div id="parent">
  <p id="elem">text</p>
  <a href="" id="remove">odstrániť</a>
</div>
javascriptlet elem   = document.querySelector('#elem');
let remove = document.querySelector('#remove');

remove.addEventListener('click', function(event) {
  elem.remove();
  event.preventDefault(); // zrušíme prechod na odkaz
});
Задание 1

Samostatne, bez nahliadania do môjho kódu, vyriešte opísanú úlohu.