Rumah >hujung hadapan web >tutorial css >Bagaimana untuk Mendapatkan Semua Atribut Gaya Elemen mengikut ID dalam JavaScript?

Bagaimana untuk Mendapatkan Semua Atribut Gaya Elemen mengikut ID dalam JavaScript?

Susan Sarandon
Susan Sarandonasal
2024-10-30 22:42:03283semak imbas

How to Retrieve All Style Attributes of an Element by ID in JavaScript?

Mendapatkan Semua Atribut Gaya melalui ID Elemen

Anda boleh mengambil semua atribut gaya yang digunakan pada elemen dengan memberikan IDnya menggunakan kaedah berikut:

Gelung Melalui CSSStyleDeclaration Object:

Lelaran melalui indeks objek CSSStyleDeclaration (getComputedStyle) untuk mendapatkan setiap nama sifat yang diketahui. Gunakan getPropertyValue dengan nama ini untuk mendapatkan semula nilai.

Memproses Gaya Sebaris:

Untuk gaya sebaris, gunakan kaedah gelung yang sama seperti jenis gaya lain.

Menyatukan Semuanya:

Ini kodnya:

<code class="javascript">function getStyleById(id) {
    return getAllStyles(document.getElementById(id));
}

function getAllStyles(elem) {
    if (!elem) return [];

    var win = document.defaultView || window, style, styleNode = [];

    if (win.getComputedStyle) { /* Modern browsers */
        style = win.getComputedStyle(elem, '');
        for (var i=0; i<style.length; i++) {
            styleNode.push( style[i] + ':' + style.getPropertyValue(style[i]) );
        }
    } else if (elem.currentStyle) { /* IE */
        style = elem.currentStyle;
        for (var name in style) {
            styleNode.push( name + ':' + style[name] );
        }
    } else { /* Ancient browser..*/
        style = elem.style;
        for (var i=0; i<style.length; i++) {
            styleNode.push( style[i] + ':' + style[style[i]] );
        }
    }
    return styleNode;
}</code>

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Semua Atribut Gaya Elemen mengikut ID dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn