Heim > Web-Frontend > js-Tutorial > Hauptteil

Beherrschen Sie den allgemeinen Event-Bubbling-Mechanismus in JavaScript

王林
Freigeben: 2024-02-19 16:43:05
Original
509 Leute haben es durchsucht

Beherrschen Sie den allgemeinen Event-Bubbling-Mechanismus in JavaScript

Gemeinsame Bubbling-Ereignisse in JavaScript: Um die Bubbling-Eigenschaften allgemeiner Ereignisse zu beherrschen, sind spezifische Codebeispiele erforderlich.

Einführung:
In JavaScript bedeutet Event-Bubbling, dass Ereignisse von dem Element mit der tiefsten Verschachtelungsebene nach außen beginnen. Layer-Elemente werden weitergegeben, bis sie das äußerste übergeordnete Element erreichen. Das Verstehen und Beherrschen häufiger Bubbling-Ereignisse kann uns dabei helfen, die Benutzerinteraktion und die Ereignisbehandlung besser zu bewältigen. In diesem Artikel werden einige häufig auftretende Blasenereignisse vorgestellt und spezifische Codebeispiele bereitgestellt, um den Lesern ein besseres Verständnis zu erleichtern.

1. Click-Ereignis (Klick):

Click-Ereignis ist das häufigste Sprudelereignis. Wenn der Benutzer auf ein Element auf der Seite klickt, wird das Klickereignis für das Element ausgelöst und dann Schritt für Schritt an die äußeren Elemente weitergegeben, bis das Klickereignis des äußersten übergeordneten Elements ausgelöst wird.

HTML-Beispielcode:

<div id="outer">
  <div id="inner">
    <button id="btn">点击我</button>
  </div>
</div>
Nach dem Login kopieren

JavaScript-Code:

document.getElementById('outer').addEventListener('click', function() {
  console.log('outer clicked');
});

document.getElementById('inner').addEventListener('click', function() {
  console.log('inner clicked');
});

document.getElementById('btn').addEventListener('click', function() {
  console.log('button clicked');
});
Nach dem Login kopieren

Wenn auf die Schaltfläche geklickt wird, gibt die Konsole die folgenden Ergebnisse aus:

button clicked
inner clicked
outer clicked
Nach dem Login kopieren

2. Mousemove-Ereignis (mousemove):

Mousemove-Ereignis ist auch ein häufiges Bubbling-Ereignis . Wenn der Benutzer die Maus auf der Seite bewegt, wird das Mausbewegungsereignis Schritt für Schritt an die äußeren Elemente weitergegeben.

HTML-Beispielcode:

<div id="outer">
  <div id="inner">
    <button id="btn">移动鼠标</button>
  </div>
</div>
Nach dem Login kopieren

JavaScript-Code:

document.getElementById('outer').addEventListener('mousemove', function() {
  console.log('outer mousemove');
});

document.getElementById('inner').addEventListener('mousemove', function() {
  console.log('inner mousemove');
});

document.getElementById('btn').addEventListener('mousemove', function() {
  console.log('button mousemove');
});
Nach dem Login kopieren

Wenn sich die Maus über die Schaltfläche bewegt, gibt die Konsole die folgenden Ergebnisse aus:

button mousemove
inner mousemove
outer mousemove
Nach dem Login kopieren

3. Tastaturdruckereignis (Taste nach unten):

Tastaturdruckereignis wird ebenfalls angezeigt sprudeln bis zu den äußeren Elementen. Wenn der Benutzer eine beliebige Taste auf der Tastatur auf der Seite drückt, wird das Tastaturdruckereignis Schritt für Schritt an die äußeren Elemente weitergegeben.

HTML-Beispielcode:

<div id="outer">
  <div id="inner">
    <input id="input" type="text" placeholder="按下键盘">
  </div>
</div>
Nach dem Login kopieren

JavaScript-Code:

document.getElementById('outer').addEventListener('keydown', function() {
  console.log('outer keydown');
});

document.getElementById('inner').addEventListener('keydown', function() {
  console.log('inner keydown');
});

document.getElementById('input').addEventListener('keydown', function() {
  console.log('input keydown');
});
Nach dem Login kopieren

Wenn die Tastatur im Eingabefeld gedrückt wird, gibt die Konsole die folgenden Ergebnisse aus:

input keydown
inner keydown
outer keydown
Nach dem Login kopieren

Fazit:
Anhand der oben genannten Beispiele einiger häufiger Blasenereignisse lernen wir über die Anwendung von Event-Bubbling in JavaScript. Die Beherrschung des Event-Bubblings kann uns dabei helfen, die Benutzerinteraktion und den Event-Handling besser zu handhaben. Es ist zu beachten, dass einige Ereignisse nicht sprudeln, z. B. Fokusereignisse, Formularereignisse usw., die meisten gängigen DOM-Ereignisse jedoch sprudeln. Während des Entwicklungsprozesses sollten wir den geeigneten Ereignistyp für die Verarbeitung entsprechend den Anforderungen auswählen und die Verarbeitungslogik entsprechend den Eigenschaften der Ereignisblase anpassen. Wir hoffen, dass die Leser durch die Einführung und den Beispielcode dieses Artikels das Konzept von Bubbling-Events besser verstehen und auf ihre eigenen Projekte anwenden können.

Das obige ist der detaillierte Inhalt vonBeherrschen Sie den allgemeinen Event-Bubbling-Mechanismus in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage