⊗jsPmDmLHU 362 of 505 menu

Αποδέσμευση Χειριστών Συμβάντων σε Βρόχο σε JavaScript

Ας υποθέσουμε ότι τώρα δεν έχουμε ένα στοιχείο, αλλά πολλά. Για παράδειγμα, πολλές παράγραφους:

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

Ας προσθέσουμε σε καθεμία από αυτές τις παραγράφους μια συνάρτηση χειριστή κλικ func:

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

Ας τροποποιήσουμε τώρα τον κώδικα έτσι ώστε κάθε παράγραφος να αντιδρά μόνο στην πρώτη πτώση πάνω της. Για να γίνει αυτό, κατά το κλικ στην παράγραφο θα αποσυνδέσουμε τον συνδεδεμένο χειριστή από αυτήν. Σε αυτήν την περίπτωση, η αποδέσμευση θα είναι συγκεκριμένα από αυτήν την παράγραφο, χωρίς να επηρεάζει τις υπόλοιπες.

Όπως ήδη γνωρίζετε, το στοιχείο στο οποίο συνέβη το συμβάν μπορεί να ληφθεί στη συνάρτηση-χειριστή μέσω του this. Αυτό σημαίνει ότι πρέπει να εκτελέσετε την αποδέσμευση του χειριστή από το this, έτσι:

let elems = document.querySelectorAll('p'); for (let elem of elems) { elem.addEventListener('click', func); } function func() { console.log(this.textContent); this.removeEventListener('click', func); // αποδεσμεύουμε τον χειριστή }

Δίνονται παράγραφοι. Πατώντας σε οποιαδήποτε από τις παραγράφους προσθέστε στο τέλος της ένα θαυμαστικό. Κάντε έτσι ώστε αυτή η προσθήκη να συμβαίνει μόνο στην πρώτη πτώση.

Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη