Bagaimana untuk Menggayakan Berbilang Elemen Secara Dinamik dengan Kelas yang Sama dengan Berlegar Peristiwa dalam JavaScript?

Susan Sarandon
Lepaskan: 2024-10-24 07:48:02
asal
148 orang telah melayarinya

How to Dynamically Style Multiple Elements with the Same Class by Event Hovering in JavaScript?

Cara Menggayakan Berbilang Elemen dengan Kelas Yang Sama Menggunakan JavaScript

Apabila bekerja dengan HTML dan CSS, kadangkala anda perlu menukar penggayaan secara dinamik daripada berbilang elemen dengan kelas yang sama. Dalam kes ini, persoalannya ialah tentang menggunakan getElementsByClassName untuk menukar warna latar belakang semua elemen dengan kelas tertentu apabila menuding pada elemen halaman lain.

Masalah timbul kerana getElementsByClassName mengembalikan koleksi elemen, bukan satu elemen . Untuk menggayakan berbilang elemen, anda perlu mengulangi koleksi dan menggunakan perubahan gaya pada setiap elemen.

<code class="js">var elements = document.getElementsByClassName('classname');
for (var i = 0; i < elements.length; i++) {
  elements[i].style.backgroundColor = 'red';
}
Salin selepas log masuk

Isu lain ialah acara tuding tidak dilampirkan dengan betul pada elemen sasaran. Dalam kod asal, acara onmouseover dilampirkan pada elemen pencetus (yang dilegarkan di atas). Untuk menukar penggayaan elemen sasaran, acara harus dilampirkan pada elemen sasaran itu sendiri.

<code class="html"><th class="classname" onmouseover="changeColor(this)">Hover Here</th></code>
Salin selepas log masuk

Akhir sekali, adalah penting untuk ambil perhatian bahawa pengendali acara sebaris seperti onmouseover tidak disyorkan. Sebaliknya, anda harus menggunakan pendengar acara untuk melampirkan pengendali acara pada elemen.

<code class="js">function changeColor(element) {
  element.style.backgroundColor = 'red';
}

document.querySelectorAll('.classname').forEach((element) => {
  element.addEventListener('mouseover', () => {
    changeColor(element);
  });
});</code>
Salin selepas log masuk

Dengan menggunakan teknik ini, anda boleh menukar gaya berbilang elemen dengan kelas yang sama secara dinamik apabila menuding pada elemen halaman lain.

Atas ialah kandungan terperinci Bagaimana untuk Menggayakan Berbilang Elemen Secara Dinamik dengan Kelas yang Sama dengan Berlegar Peristiwa dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber: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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!