Rumah >hujung hadapan web >tutorial css >Bagaimanakah Saya Boleh Semak dengan Cekap sama ada Elemen DOM JavaScript Mengandungi Kelas Tertentu?

Bagaimanakah Saya Boleh Semak dengan Cekap sama ada Elemen DOM JavaScript Mengandungi Kelas Tertentu?

Susan Sarandon
Susan Sarandonasal
2025-01-01 12:53:14977semak imbas

How Can I Efficiently Check if a JavaScript DOM Element Contains a Specific Class?

Menyemak sama ada Elemen Mengandungi Kelas dalam JavaScript

Dalam JavaScript, anda mungkin menghadapi senario di mana anda perlu menentukan sama ada elemen DOM mengandungi kelas tertentu. Walaupun pendekatan semasa anda menggunakan element.className dan pernyataan suis boleh berfungsi, ia mempunyai had apabila elemen mempunyai berbilang kelas.

Menggunakan element.classList.contains()

Untuk keserasian silang penyemak imbas yang lebih baik, anda boleh menggunakan element.classList.contains() kaedah:

element.classList.contains(className);

Kaedah ini mengembalikan boolean yang menunjukkan sama ada elemen itu mempunyai kelas yang ditentukan. Ia disokong dalam semua penyemak imbas utama.

Pendekatan Alternatif dengan indexOf

Jika anda berurusan dengan pelayar lama yang tidak menyokong element.classList, anda boleh mengubah suai pendekatan indexOf anda yang sedia ada seperti berikut:

function hasClass(element, className) {
    return (' ' + element.className + ' ').indexOf(' ' + className+ ' ') > -1;
}

Ini memastikan bahawa semakan hanya mengembalikan benar jika kelas yang anda cari tidak terkandung dalam nama kelas lain.

Contoh Pelaksanaan

Menggunakan teknik yang dikemas kini pada contoh anda:

var test = document.getElementById("test"),
    classes = ['class1', 'class2', 'class3', 'class4'];

test.innerHTML = "";

for(var i = 0, j = classes.length; i < j; i++) {
    if(hasClass(test, classes[i])) {
        test.innerHTML = "I have " + classes[i];
        break;
    }
}

Pendekatan ini mengendalikan kes di mana elemen ujian mempunyai berbilang kelas, memastikan kelas yang betul dikesan walaupun tertib atau kelas tambahannya hadir.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Semak dengan Cekap sama ada Elemen DOM JavaScript Mengandungi Kelas Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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