Heim > Web-Frontend > CSS-Tutorial > Wie kann ich CSS in JavaScript mithilfe des CSSOM effizient analysieren?

Wie kann ich CSS in JavaScript mithilfe des CSSOM effizient analysieren?

Mary-Kate Olsen
Freigeben: 2024-11-26 13:52:18
Original
1028 Leute haben es durchsucht

How Can I Efficiently Parse CSS in JavaScript Using the CSSOM?

CSS in JavaScript / jQuery analysieren

Um CSS in JavaScript zu analysieren, können Sie die integrierte CSSOM-Schnittstelle des Browsers nutzen. Dies macht benutzerdefinierte Bibliotheken überflüssig und bietet eine standardisierte Möglichkeit, auf CSS-Daten zuzugreifen.

JavaScript zum Abrufen der CSS-Regeln direkt aus CSSOM:

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;
};
Nach dem Login kopieren

Jede von RulesForCssText zurückgegebene CSS-Regel kann kann mithilfe von „rule.style“ weiter überprüft werden, das Zugriff auf einzelne CSS-Eigenschaften bietet.

Bedenken Sie beispielsweise die CSS:

a {
  color: red;
}
Nach dem Login kopieren

Mit RulesForCssText können Sie die Regel für den „a“-Stil abrufen und auf seine Eigenschaften zugreifen:

const rules = rulesForCssText('a { color: red; }');
const aRule = rules[0];
console.log(aRule.selectorText); // Outputs: "a"
console.log(aRule.style.color); // Outputs: "red"
Nach dem Login kopieren

Dieser alternative Ansatz behebt das Problem, das bei Ihrer benutzerdefinierten Analyse auftritt Implementierung, da sie nicht auf die manuelle Aufteilung von Zeichenfolgen und die Behandlung von Sonderfällen wie URIs in Eigenschaftswerten angewiesen ist.

Das obige ist der detaillierte Inhalt vonWie kann ich CSS in JavaScript mithilfe des CSSOM effizient analysieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage