首頁 >web前端 >css教學 >如何可靠地檢查 JavaScript 中特定類別是否存在?

如何可靠地檢查 JavaScript 中特定類別是否存在?

Barbara Streisand
Barbara Streisand原創
2024-12-25 06:05:17732瀏覽

How Can I Reliably Check for the Presence of a Specific Class in JavaScript?

確定 JavaScript 中元素類別的存在

檢查元素的類別屬性時,通常需要驗證它是否包含特定類別。提供的程式碼利用 switch 語句來檢查元素的確切類別值,但此方法無法偵測部分匹配。

要解決此限制,請考慮使用 element.classList .contains 方法。此方法接受類別名稱作為參數,並傳回布林值,指示其在元素的類別清單中的存在:

element.classList.contains(class);

現代瀏覽器普遍支援此方法,並提供一致的方法來檢查類別包含。

或者,為了與缺少.contains 方法的舊版瀏覽器相容,您可以使用以下indexOf 的修改版本方法:

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

此修改可確保您準確檢測部分匹配,避免當您尋找的類別是較大類別名稱的一部分時出現誤報。

將此方法應用於提供的範例:

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;
    }
}

透過使用.contains方法或修改後的indexOf函數,你可以可靠地判斷一個元素是否包含JavaScript中的特定類,無論瀏覽器相容性或是否有部分匹配。

以上是如何可靠地檢查 JavaScript 中特定類別是否存在?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn