首頁 >web前端 >js教程 >如何找到 JavaScript 中應用於元素的 CSS 規則的起源?

如何找到 JavaScript 中應用於元素的 CSS 規則的起源?

Susan Sarandon
Susan Sarandon原創
2024-11-10 22:32:02265瀏覽

How to Find the Origin of CSS Rules Applied to an Element in JavaScript?

尋找應用於元素的CSS 規則的起源

當瀏覽器渲染網頁時,它會從各種樣式表編譯CSS 規則,並將它們應用於各個元素。開發人員經常需要檢查此繼承層次結構以了解樣式問題或以程式設計方式操作元素。

但是,在沒有瀏覽器插件的情況下以純 JavaScript 重現此功能可能具有挑戰性。為了解決這個問題,我們提供了一個跨瀏覽器相容的解決方案:

function css(el) {
    var sheets = document.styleSheets, ret = [];
    el.matches = el.matches || el.webkitMatchesSelector || el.mozMatchesSelector 
        || el.msMatchesSelector || el.oMatchesSelector;
    for (var i in sheets) {
        var rules = sheets[i].rules || sheets[i].cssRules;
        for (var r in rules) {
            if (el.matches(rules[r].selectorText)) {
                ret.push(rules[r].cssText);
            }
        }
    }
    return ret;
}

此函數將一個元素作為輸入並傳回一個包含所有適用於此元素的 CSS 規則的陣列。例如,呼叫 css(document.getElementById('elementId')) 將提供一個數組,其中每個元素代表應用於指定元素的 CSS 規則。

透過利用此解決方案,開發人員可以深入了解原始碼CSS 規則並更有效地管理元素樣式,而無需依賴瀏覽器外掛程式。

以上是如何找到 JavaScript 中應用於元素的 CSS 規則的起源?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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