在 JavaScript / jQuery 解析 CSS
要在 JavaScript 解析 CSS,您可以利用瀏覽器內建的 CSSOM 介面。這消除了對自訂庫的需求,並提供了存取 CSS 資料的標準化方法。
用於直接從CSSOM 取得CSS 規則的JavaScript:
var rulesForCssText = function (styleContent) { var doc = document.implementation.createHTMLDocument(""), styleElement = document.createElement("style"); styleElement.textContent = styleContent; // the style will only be parsed once it is added to a document doc.body.appendChild(styleElement); return styleElement.sheet.cssRules; };
rulesForCssText 傳回的每個CSS 規則都可以使用rule.style進行進一步檢查,它提供對各個CSS屬性的訪問。
例如,考慮CSS:
a { color: red; }
使用rulesForCssText,您可以檢索「a」樣式的規則並存取其屬性:
const rules = rulesForCssText('a { color: red; }'); const aRule = rules[0]; console.log(aRule.selectorText); // Outputs: "a" console.log(aRule.style.color); // Outputs: "red"
這種替代方法解決了自訂解析中面臨的問題實現,因為它不依賴手動字串拆分和處理屬性值中的URI 等特殊情況。
以上是如何使用 CSSOM 高效解析 JavaScript 中的 CSS?的詳細內容。更多資訊請關注PHP中文網其他相關文章!