Maison >interface Web >tutoriel CSS >Comment puis-je obtenir des styles calculés à partir d'une Iframe inter-domaines ?

Comment puis-je obtenir des styles calculés à partir d'une Iframe inter-domaines ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-05 04:05:16518parcourir

How Can I Get Computed Styles from a Cross-Domain Iframe?

Comment récupérer des styles calculés à partir d'un contenu inter-domaines

Problème :

Accès aux valeurs calculées de hauteur et de largeur de un élément d'une iframe inter-domaines peut être difficile, en particulier si vous ne parvenez pas à accéder au contenu de l'iframe directement.

Solution :

Utilisation des fonctions spécifiques au navigateur :

  • Firefox, Opera, Safari : window.getComputedStyle(element)
  • IE : element.currentStyle

Application au contenu inter-domaines :

Pour récupérer les styles calculés à partir du contenu inter-domaines, vous pouvez utiliser window.getComputedStyle dans les navigateurs modernes ou element.currentStyle dans C'est à dire. Cependant, ces fonctions ne fonctionnent que sur les éléments du document actuel, vous devez donc naviguer dans le DOM de l'iframe avant de les utiliser.

Exemple (WebKit) :

window.getComputedStyle(document.getElementById("frameId"), null).getPropertyValue("height")

Fonction jQuery native :

Alternativement, vous pouvez utiliser la fonction jQuery Fonction .height(), qui simplifie le processus :

$('#frameId').height();

Notes supplémentaires :

  • Il est important de noter que window.getComputedStyle renvoie un objet immuable avec les styles calculés, tandis que element.currentStyle renvoie un objet vivant qui peut changer à mesure que le style de l'élément change.
  • Vous Il faudra peut-être ajouter un identifiant à l'élément head dans l'iframe pour faciliter la sélection ultérieure.

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