Heim > Web-Frontend > js-Tutorial > Können Sie Klickereignisse auf CSS-Pseudoelementen erkennen?

Können Sie Klickereignisse auf CSS-Pseudoelementen erkennen?

Susan Sarandon
Freigeben: 2024-11-28 15:28:14
Original
840 Leute haben es durchsucht

Can You Detect Click Events on CSS Pseudo-Elements?

Klicken Sie auf Ereigniserkennung bei Pseudoelementen

Frage:

Im bereitgestellten Code Ein Klickereignis wird sowohl auf dem Pseudoelement (rotes Bit) als auch auf dem Hauptelement (blaues Bit) ausgelöst. Das Ziel besteht jedoch darin, Klicks nur auf das Pseudoelement zu erkennen. Ist das möglich?

Antwort:

Nein, es ist nicht möglich, Klickereignisse auf Pseudoelementen direkt zu erkennen, da diese nicht als Teil des Dokumentobjekts vorhanden sind Modell (DOM). Pseudoelemente sind virtuelle Elemente, die vom Browser generiert werden und nicht Teil der eigentlichen HTML-Struktur sind.

Alternativer Ansatz:

Wenn Sie einen Klick implementieren müssen Wenn Sie einen Handler speziell für den roten Bereich verwenden, können Sie ein untergeordnetes Element erstellen, z. B. einen Span:

<p>
  <span class="red-bit"></span>
  Lorem ipsum dolor sit amet, ...
</p>
Nach dem Login kopieren

Anschließend wenden Sie Stile auf den Span an Element:

.red-bit {
  position: absolute;
  left: 100%;
  width: 10px;
  height: 100%;
  background-color: red;
}
Nach dem Login kopieren

Schließlich binden Sie den Click-Handler an das Span-Element:

document.querySelector(".red-bit").addEventListener("click", function() {
  // Click handler code
});
Nach dem Login kopieren

Mit diesem Ansatz können Sie Klicks im roten Bereich erfassen und gleichzeitig verhindern, dass Klicks auf dem ausgelöst werden Hauptelement.

Das obige ist der detaillierte Inhalt vonKönnen Sie Klickereignisse auf CSS-Pseudoelementen erkennen?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage