Hi everyone! I'm the author of code.mu :)
I'd love to chat with my non-Russian audience. I'm looking for your feedback on the site and the translation quality. Let's chat:)
⊗jsPmDmLNH 359 of 505 menu
◀ ▶

Adăugarea de manipulatoare în buclă în JavaScript

Să învățăm acum cum să adăugăm în masă manipulatoare de evenimente elementelor. Să presupunem, de exemplu, că avem paragrafe:

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

Să presupunem că avem și o funcție:

function func() { console.log('!'); }

Să parcurgem paragrafele noastre în buclă și fiecărui paragraf să-i adăugăm ca manipulator de click funcția func:

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

Să mergem mai departe și să facem astfel încât la click pe orice paragraf să fie afișat textul acelui paragraf. Există, totuși, o problemă: paragrafe sunt multe, iar funcția-manipulator este una singură. Cum să distingem paragrafele noastre în interiorul funcției-manipulator?

În aceasta ne va ajuta obiectul this - la apelarea funcției în momentul evenimentului acest obiect va indica către acel element unde acest eveniment s-a produs. Să modificăm codul funcției noastre func în conformitate cu cele spuse:

function func() { console.log(this.textContent); // afișăm textul paragrafului }

Este dată următoarea funcție:

function func() { this.value = Number(this.value) + 1; }

De asemenea, sunt date input-uri. Faceți astfel încât la pierderea focusului în oricare dintre input-urile noastre să se execute funcția prezentată mai sus.

Sunt date paragrafe cu numere. Faceți astfel încât la click pe orice paragraf numărul din el să fie ridicat la pătrat.

← →
↑
Română▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge