在確定 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透過使用 .contains 方法或修改後的 indexOf 函數,您可以可靠地確定某個元素是否包含 JavaScript 中的特定類,而不管瀏覽器相容性或是否存在部分匹配。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3