⊗jsPmOEEE 419 of 505 menu

Das Ereigniselement im Event-Objekt in JavaScript

Das Objekt Event ermöglicht es auch, das Element zu erhalten, in dem das Ereignis stattgefunden hat. Dieses Element ist in der Eigenschaft target enthalten. Warum ist das notwendig, wenn dieses Element in this enthalten ist?

Die Sache ist die, dass this tatsächlich immer das Element enthält, an das das Ereignis gebunden wurde, während die Eigenschaft target das Element enthält, auf das tatsächlich geklickt wurde. Dieses tatsächliche Element kann mit this übereinstimmen, oder auch nicht.

Schauen wir uns ein Beispiel an. Nehmen wir an, wir haben einen div und darin einen Absatz:

<div id="elem"> <p>text</p> </div>

Binden wir ein Ereignis an den div, klicken aber auf den Absatz. Offensichtlich stellt der Klick auf den Absatz gleichzeitig einen Klick auf den div dar, da der Absatz in unserem div enthalten ist.

Im beschriebenen Fall wird sich herausstellen, dass die Eigenschaft target das End-Tag enthalten wird, in dem das Ereignis stattfand - also den Absatz, und nicht den div. Überzeugen wir uns davon:

let elem = document.querySelector('#elem'); elem.addEventListener('click', function(event) { console.log(event.target); // gibt unseren Absatz aus console.log(this); // gibt unseren div aus });

Nehmen wir an, Sie haben eine Liste ul mit li-Tags:

ul { padding: 30px; border: 1px solid red; } li { list-style-type: none; margin-bottom: 20px; border: 1px dashed black; } <ul id="elem"> <li>text</li> <li>text</li> <li>text</li> <li>text</li> <li>text</li> </ul>

:

Binden Sie einen Klick-Handler an das ul-Tag. Prüfen Sie in diesem Handler mithilfe der Eigenschaft tagName, auf welches Tag geklickt wurde. Wenn der Klick auf ein li-Tag erfolgte - fügen Sie am Ende des Textes dieses Tags ein Ausrufezeichen hinzu. Wenn der Klick auf das ul-Tag erfolgte - geben Sie Informationen dazu in der Konsole aus.

Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen