Rumah hujung hadapan web tutorial js Ketahui prinsip menggelegak acara klik dan cara menggunakannya dalam pembangunan web

Ketahui prinsip menggelegak acara klik dan cara menggunakannya dalam pembangunan web

Jan 13, 2024 pm 12:47 PM
pembangunan web gelembung acara klik

Ketahui prinsip menggelegak acara klik dan cara menggunakannya dalam pembangunan web

Fahami prinsip menggelegak acara klik dan aplikasinya dalam pembangunan web

Dalam pembangunan web, interaksi dengan pengguna sering terlibat. Antaranya, acara merupakan salah satu mekanisme penting untuk mencapai kesan interaktif ini. Antara acara ini, acara klik ialah acara yang paling banyak digunakan. Belajar untuk memahami prinsip menggelegak acara klik dan aplikasinya dalam pembangunan web boleh memahami mekanisme acara dengan lebih baik dan mencapai pengalaman interaksi pengguna yang lebih kaya. . elemen kanak-kanak satu demi satu Tahap menggelegak ke elemen induk paling atas. Proses ini dipanggil acara menggelegak.

Sebagai contoh, terdapat halaman web dengan struktur HTML berikut:

<div id="box">
  <button id="btn">点击</button>
</div>
Salin selepas log masuk

Andaikan pendengar acara klik terikat pada butang ini:

document.getElementById("btn").addEventListener("click", function(){
  console.log("按钮被点击了");
});
Salin selepas log masuk

Apabila butang diklik, konsol akan mengeluarkan "Butang telah diklik". Ini kerana peristiwa klik butang mencetuskan pendengar.

Jika kita mengikat pendengar acara daripada jenis yang sama kepada div elemen induk:

document.getElementById("box").addEventListener("click", function(){
  console.log("div被点击了");
});
Salin selepas log masuk

Dengan cara ini, apabila butang diklik, bukan sahaja "butang diklik" dikeluarkan, tetapi "div diklik" juga dikeluarkan . Ini kerana selepas peristiwa klik dicetuskan pada butang, ia akan terus menggelembung ke div elemen induk. . Ini boleh mengurangkan jumlah kod dan memudahkan penyelenggaraan dan pengembangan.

Sebagai contoh, katakan terdapat senarai ul dengan berbilang elemen li di dalamnya. Untuk mencapai apabila elemen li diklik, warna latar belakangnya ditukar. Kita boleh menulis kod seperti ini:

<ul id="list">
  <li>选项1</li>
  <li>选项2</li>
  <li>选项3</li>
</ul>
Salin selepas log masuk
var lis = document.getElementById("list").getElementsByTagName("li");
for(var i=0; i<lis.length; i++){
  lis[i].addEventListener("click", function(){
    this.style.backgroundColor = "red";
  });
}
Salin selepas log masuk

Walau bagaimanapun, jika kita perlu menambah elemen li baharu kemudian, kita perlu mengekalkannya semula dalam kod JavaScript. Dan jika kita menggunakan acara menggelegak, kita hanya perlu mengikat pendengar acara kepada elemen ul:

document.getElementById("list").addEventListener("click", function(e){
  if(e.target.tagName.toLowerCase() === "li"){
    e.target.style.backgroundColor = "red";
  }
});
Salin selepas log masuk

Tidak kira berapa banyak elemen li yang ada, kita hanya memerlukan seorang pendengar, dan kita boleh menggunakan mekanisme menggelegak acara untuk menetapkannya elemen induk Tangkap acara dan kemudian tentukan elemen anak yang telah diklik berdasarkan sumber acara.

  1. Melaksanakan delegasi acara

Dengan menggunakan bubbling acara, kita boleh melaksanakan fungsi delegasi acara. Delegasi acara merujuk kepada menyerahkan acara elemen kepada elemen induknya atau elemen peringkat lebih tinggi untuk diproses. Ini mengurangkan bilangan pendengar dan memudahkan pengikatan dinamik.

Sebagai contoh, katakan kita mempunyai jadual dan apabila tetikus dilegar di atas sel, warna latar belakang sel itu berubah. Kita boleh menulis kod seperti ini:

<table id="table">
  <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
  </tr>
  <tr>
    <td>4</td>
    <td>5</td>
    <td>6</td>
  </tr>
</table>
Salin selepas log masuk
var tds = document.getElementById("table").getElementsByTagName("td");
for(var i=0; i<tds.length; i++){
  tds[i].addEventListener("mouseover", function(){
    this.style.backgroundColor = "yellow";
  });
  tds[i].addEventListener("mouseout", function(){
    this.style.backgroundColor = "white";
  });
}
Salin selepas log masuk

Walau bagaimanapun, jika kita perlu menambah sel baru kemudian, kita perlu mengekalkannya semula dalam kod JavaScript. Dan jika kita menggunakan acara menggelegak, kita hanya perlu mengikat pendengar acara pada elemen jadual:

document.getElementById("table").addEventListener("mouseover", function(e){
  if(e.target.tagName.toLowerCase() === "td"){
    e.target.style.backgroundColor = "yellow";
  }
});
document.getElementById("table").addEventListener("mouseout", function(e){
  if(e.target.tagName.toLowerCase() === "td"){
    e.target.style.backgroundColor = "white";
  }
});
Salin selepas log masuk

Dengan menilai sumber acara, kita boleh mengelak daripada mengikat pendengar pada setiap sel. Ini mengurangkan bilangan pendengar dan memudahkan pengikatan dinamik.

    Ringkasnya, memahami prinsip menggelegak acara klik dan aplikasinya dalam pembangunan web boleh meningkatkan kebolehselenggaraan dan kebolehskalaan kod, sambil merealisasikan fungsi delegasi acara. Pada masa yang sama, acara menggelegak juga boleh mengawal dan mengendalikan interaksi pengguna dengan lebih baik. Dalam pembangunan web sebenar, pemahaman yang mendalam dan penggunaan fleksibel mekanisme menggelegak acara klik akan meningkatkan kecekapan pembangunan dan pengalaman pengguna.

Atas ialah kandungan terperinci Ketahui prinsip menggelegak acara klik dan cara menggunakannya dalam pembangunan web. 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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara menggunakan PHP untuk membangunkan fungsi penyegaran berjadual untuk halaman web Cara menggunakan PHP untuk membangunkan fungsi penyegaran berjadual untuk halaman web Aug 17, 2023 pm 04:25 PM

Cara menggunakan PHP untuk membangunkan fungsi penyegaran berjadual untuk halaman web Dengan perkembangan Internet, semakin banyak laman web perlu mengemas kini data paparan dalam masa nyata. Muat semula halaman dalam masa nyata adalah keperluan biasa, yang membolehkan pengguna mendapatkan data terkini tanpa memuat semula keseluruhan halaman. Artikel ini akan memperkenalkan cara menggunakan PHP untuk membangunkan fungsi muat semula berjadual untuk halaman web dan menyediakan contoh kod. Cara paling mudah untuk melaksanakan muat semula berjadual menggunakan teg Meta ialah menggunakan teg Meta HTML untuk menyegarkan halaman dengan kerap. Dalam HTML&lt;head&gt;

Apakah bidang aplikasi utama JavaScript? Apakah bidang aplikasi utama JavaScript? Mar 23, 2024 pm 05:42 PM

Apakah bidang aplikasi utama JavaScript? JavaScript ialah bahasa skrip yang digunakan secara meluas dalam pembangunan web untuk menambah interaktiviti dan kesan dinamik pada halaman web. Selain digunakan secara meluas dalam pembangunan web, JavaScript juga boleh digunakan dalam pelbagai bidang lain. Bidang aplikasi utama JavaScript dan contoh kod yang sepadan akan diperkenalkan secara terperinci di bawah. 1. Pembangunan web Bidang aplikasi JavaScript yang paling biasa adalah dalam pembangunan web, melalui Java

Kuasai mekanisme menggelegak acara biasa dalam JavaScript Kuasai mekanisme menggelegak acara biasa dalam JavaScript Feb 19, 2024 pm 04:43 PM

Peristiwa menggelegak biasa dalam JavaScript: Untuk menguasai ciri menggelegak acara biasa, contoh kod khusus diperlukan Pengenalan: Dalam JavaScript, acara menggelegak bermakna peristiwa itu akan merambat dari elemen dengan tahap bersarang paling dalam ke elemen luar sehingga ia merambat ke. Unsur induk paling luar. Memahami dan menguasai acara menggelegak biasa boleh membantu kami mengendalikan interaksi pengguna dan pengendalian acara dengan lebih baik. Artikel ini akan memperkenalkan beberapa peristiwa menggelegak biasa dan memberikan contoh kod khusus untuk membantu pembaca memahami dengan lebih baik. 1. Klik acara (klik

Senario aplikasi praktikal atribut global HTML: 5 petua untuk meningkatkan kecekapan pembangunan web Senario aplikasi praktikal atribut global HTML: 5 petua untuk meningkatkan kecekapan pembangunan web Feb 18, 2024 pm 05:35 PM

Kes aplikasi praktikal atribut global HTML: 5 petua untuk meningkatkan kecekapan pembangunan halaman web HTML, sebagai bahasa penanda untuk membina struktur halaman web, mempunyai banyak atribut global, yang boleh digunakan pada elemen yang berbeza untuk mencapai fungsi dan kesan yang berbeza. Dalam proses pembangunan web, penggunaan rasional sifat global ini boleh meningkatkan kecekapan pembangunan. Artikel ini akan memperkenalkan anda kepada 5 kes aplikasi praktikal dan melampirkan contoh kod yang sepadan. Penggunaan atribut kelas: pengubahsuaian kelompok atribut kelas gaya boleh diberikan kepada elemen HTML

Mendedahkan kepentingan localStorage dalam pembangunan web Mendedahkan kepentingan localStorage dalam pembangunan web Jan 03, 2024 am 08:58 AM

Mendedahkan kepentingan localStorage dalam pembangunan web Dalam pembangunan web moden, localStorage ialah alat penting yang digunakan secara meluas. Ia membolehkan pembangun menyimpan dan mendapatkan data pada penyemak imbas pengguna, dan digunakan untuk menyimpan dan membaca data setempat. Artikel ini akan mendedahkan kepentingan localStorage dalam pembangunan web dan menyediakan beberapa contoh kod khusus untuk membantu pembaca memahami dan menggunakan localStorage dengan lebih baik. 1. localStorage

Peristiwa JS manakah yang tidak disebarkan ke atas? Peristiwa JS manakah yang tidak disebarkan ke atas? Feb 19, 2024 am 08:17 AM

Acara JS mana yang tidak akan menggelegak? Dalam JavaScript, peristiwa menggelegak bermakna apabila elemen mencetuskan peristiwa, peristiwa itu akan menggelegak ke elemen peringkat lebih tinggi sehingga ia menggelembung ke nod akar dokumen. Pengendali acara kemudiannya dilaksanakan mengikut susunan mereka menggelembung. Walau bagaimanapun, tidak semua acara menggelegak. Sesetengah acara hanya akan melaksanakan pengendali acara pada elemen sasaran selepas dicetuskan, tanpa menggelegak ke elemen peringkat lebih tinggi. Berikut ialah beberapa peristiwa biasa yang tidak menggelembung: fokus dan kaburkan acara:

Rahsia untuk meningkatkan kelajuan dan kecekapan pembangunan web: Cara menggunakan rangka kerja CSS dengan berkesan Rahsia untuk meningkatkan kelajuan dan kecekapan pembangunan web: Cara menggunakan rangka kerja CSS dengan berkesan Jan 16, 2024 am 09:24 AM

Cara Menggunakan Rangka Kerja CSS dengan Cekap: Rahsia Meningkatkan Kepantasan dan Kecekapan Pembangunan Web Dalam pembangunan web moden, rangka kerja CSS telah menjadi salah satu alat yang diperlukan untuk pembangun. Dengan menggunakan rangka kerja CSS, pembangun boleh membina halaman web yang cantik dan responsif dengan cepat tanpa perlu menulis banyak kod CSS dari awal. Walau bagaimanapun, hanya menggunakan rangka kerja CSS tidak dapat mengeksploitasi sepenuhnya kelebihannya Untuk mencapai penggunaan yang cekap, berikut ialah beberapa petua untuk meningkatkan kelajuan dan kecekapan pembangunan web. 1. Pilih rangka kerja CSS yang sesuai Pilih rangka kerja CSS yang sesuai dengan keperluan projek

Tangkap dahulu atau gelembung dahulu? Menganalisis kebaikan dan keburukan proses acara Tangkap dahulu atau gelembung dahulu? Menganalisis kebaikan dan keburukan proses acara Feb 21, 2024 pm 02:36 PM

Tangkap dahulu atau gelembung dahulu? Menganalisis kelebihan dan keburukan proses peristiwa Proses peristiwa adalah konsep penting dalam pembangunan web Ia menerangkan proses peristiwa dari kejadian kepada pemprosesan. Terdapat dua model proses utama semasa mengendalikan acara: tangkap kemudian gelembung dan gelembung kemudian tangkap. Kedua-dua model ini mempunyai kelebihan dan kelemahan tersendiri dalam senario yang berbeza, dan anda perlu memilih model yang sesuai berdasarkan situasi sebenar. Menangkap dahulu dan kemudian menggelegak bermakna fasa menangkap acara dilaksanakan sebelum fasa menggelegak acara. Fasa tangkapan peristiwa bermula dari nod akar sasaran acara dan turun ke bawah langkah demi langkah sehingga mencapai elemen sasaran.

See all articles