Įvykių doroklių atjungimas cikle JavaScript

Tarkime, kad dabar turime ne vieną elementą, o kelis. Pavyzdžiui, kelis paragrafus:

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

Prie kiekvieno iš šių paragrafų pririškime klikimo doroklio funkciją func:

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

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

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

Dabar pakeiskime kodą taip, kad kiekvienas paragrafas reaguotų tik į pirmąjį paspaudimą ant jo. Tam, paspaudus ant paragrafo, atjungsime nuo jo pririštą doroklį. Atjungimas bus konkretus nuo šio paragrafo, neliesdamas kitų.

Kaip jau žinote, elementą, kuriame įvyko įvykis, galima gauti doroklio funkcijoje per this. Tai reiškia, kad reikia atlikti doroklio atjungimą nuo this, štai taip:

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

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

function func() {
  console.log(this.textContent);
  this.removeEventListener('click', func); // atjungiame doroklį
}
Задание 1

Duoti paragrafai. Paspaudus bet kurį iš paragrafų pridėkite jam į galą šauktuką. Padarykite taip, kad šis pridėjimas vyktų tik pirmuoju paspaudimu.