Maison >interface Web >tutoriel CSS >Comment récupérer tous les attributs de style d'un élément par ID en JavaScript ?

Comment récupérer tous les attributs de style d'un élément par ID en JavaScript ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-30 22:42:03286parcourir

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

Obtention de tous les attributs de style par ID d'élément

Vous pouvez récupérer tous les attributs de style appliqués à un élément en fournissant son ID en utilisant la méthode suivante :

Bouclage à travers l'objet CSSStyleDeclaration :

Parcourez les index de l'objet CSSStyleDeclaration (getComputedStyle) pour obtenir chaque nom de propriété connu. Utilisez getPropertyValue avec ce nom pour récupérer la valeur.

Traitement des styles en ligne :

Pour les styles en ligne, utilisez la même méthode de bouclage que pour les autres types de styles.

Rassembler le tout :

Voici le code :

<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>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn