Rumah > hujung hadapan web > tutorial js > Pengendalian Acara JavaScript: Apakah Perbezaan Antara `currentTarget` dan `target`?

Pengendalian Acara JavaScript: Apakah Perbezaan Antara `currentTarget` dan `target`?

Susan Sarandon
Lepaskan: 2025-01-01 09:23:56
asal
761 orang telah melayarinya

JavaScript Event Handling: What's the Difference Between `currentTarget` and `target`?

JavaScript: Mendedahkan Perbezaan Antara CurrentTarget dan Sifat Sasaran dalam Pengendalian Acara

Dalam bidang pengendalian acara JavaScript, sifat Sasaran dan sasaran semasa memegang peranan yang berbeza dalam memahami penyebaran peristiwa mekanisme.

Definisi:

  • sasaran: Mewakili elemen segera yang memulakan acara. Ini lazimnya elemen tempat tindakan pencetus bermula, seperti klik atau tuding.
  • currentTarget: Merujuk kepada elemen tempat pendengar acara dilampirkan. Ia menunjukkan elemen semasa dalam laluan gelembung acara.

Peristiwa menggelegak dan Menangkap:
Acara mengikut gelagat menggelegak lalai dalam JavaScript. Ini bermakna peristiwa yang dicetuskan pada elemen dalaman akan menyebarkan (gelembung) pokok DOM kepada nenek moyangnya.

Peranan Sifat:
Semasa penyebaran peristiwa, kedua-dua Sasaran semasa dan sasaran berikan maklumat berharga:

  • sasaran: Mengenal pasti elemen yang pada asalnya menyebabkan peristiwa itu, tanpa mengira fasa penyebaran.
  • Sasaran semasa: Mengemas kini secara dinamik apabila acara menggelembungkan hierarki DOM. Ia menunjuk kepada elemen di mana pendengar acara sedang dikendalikan.

Senario dan Kes Penggunaan:

  • Acara Kawalan Penyebaran:

    • Dengan menangkap acara dalam elemen induk (menangkap peristiwa), currentTarget akan sentiasa merujuk kepada induk, manakala sasaran akan menunjukkan elemen anak yang mencetuskan acara.
    • Dengan menggelegak acara ke objek dokumen (event bubbling), kedua-dua currentTarget dan sasaran akan diselaraskan dengan elemen yang sama sepanjang perambatan.
  • Elemen Pengasingan:

    • Menggunakan currentTarget, pengendalian acara boleh diasingkan kepada elemen tertentu dengan melampirkan pendengar pada elemen induk mereka. Elemen yang memulakan acara masih boleh dikenal pasti melalui sifat sasaran.

Contoh:

const parent = document.querySelector(".parent");
parent.addEventListener("click", (event) => {
  console.log("currentTarget:", event.currentTarget); // Parent element
  console.log("target:", event.target); // Clicked child element
});
Salin selepas log masuk

Atas ialah kandungan terperinci Pengendalian Acara JavaScript: Apakah Perbezaan Antara `currentTarget` dan `target`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan