Çlirimi i Përpunuesve të Ngjarjeve në Lak në JavaScript

Supozoni tani që kemi jo një element, por disa. Për shembull, disa paragrafë:

html<p>text1</p>
<p>text2</p>
<p>text3</p>

Le t'i lidhim secilit prej këtyre paragrafëve me një përpunues klikimi funksionin func:

javascriptlet elems = document.querySelectorAll('p');

for (let elem of elems) {
  elem.addEventListener('click', func);
}

function func() {
  console.log(this.textContent);
}

Tani le ta modifikojmë kodin në mënyrë që çdo paragraf të reagojë vetëm në klikimin e parë të bërë mbi të. Për këtë, kur klikohet në një paragraf do ta çlidhim përpunuesin e lidhur prej tij. Në këtë rast, çlirimi do të bëhet konkretisht nga ky paragraf, pa prekur të tjerët.

Siç e dini tashmë, elementi, në të cilin ka ndodhur ngjarja, mund të merret në funksionin-përpunues përmes this. Kjo do të thotë se duhet të kryhet çlirimi i përpunuesit nga this, kështu:

javascriptlet elems = document.querySelectorAll('p');

for (let elem of elems) {
  elem.addEventListener('click', func);
}

function func() {
  console.log(this.textContent);
  this.removeEventListener('click', func); // çlidhim përpunuesin
}
Задание 1

Jepen paragrafët. Me klikim në cilindo prej paragrafëve shtoni në fund të tij një pikëçuditëse. Bëni që ky shtim të ndodhë vetëm në klikimin e parë.