Comment obtenir la hauteur d'un iframe avec du javascript à partir de l'intérieur de l'iframe? Ce sujet des pages avec plusieurs iframes?
Est-il un moyen de détecter la hauteur et la largeur d'un iframe, par l'exécution d'un script à partir de l'intérieur de l'iframe?
J'ai besoin dynamiquement la position de certains éléments dans l'iframe selon les différents hauteur/largeur de l'iframe.
Aurait-il une différence si il y a plusieurs iframes dans la même page? c'est à dire chaque iframe veut trouver ses propres dimensions.
Javascript ou jquery solutions accueilli.
Merci!
<iframe src='http://example.com' width='640' height='480' scrolling='no' frameborder='0' longdesc='http://example.com'></iframe>
La iframes doivent être embarqués sur d'autres sites, et comme mentionné par l'une des réponses ci-dessous, j'ai atteint des problèmes d'autorisation.
Vous devez vous connecter pour publier un commentaire.
Si votre iframe de la page et de la page parent sont servis à partir de différents domaines (ce qui signifie que vous ne pouvez pas accéder à la page parent DOM des propriétés de l'iframe de la page, je pense que c'est le même que lorsque vous êtes en essayant de travailler avec la fenêtre d'affichage de la hauteur.
Pour cela, voir:
Ou peut-être c':
Être conscient que ce type de code:
ne sera en sécurité si la source de l'iframe et parent de la fenêtre à partir du même domaine. Si non, vous devez obtenir la permission refusée problèmes et vous aurez à prendre une autre approche.
window.postMessage
qui peut être utilisé pour communiquer entre l'intérieur et l'extérieur de script champ d'application dans les cas où ils ont des origines différentes.peut-être un peu tard, comme toutes les autres réponses sont plus 🙂 mais... voici ma solution. Testé en réel FF, Chrome et Safari 5.0.
css:
javascript:
Espère que cela va aider quelqu'un.
Chaque
<iframe>
aurait besoin d'unid
je suppose. Et puis à l'intérieur de la<iframe>
vous référence comme ceci:var thisIframesHeight = window.parent.$("iframe#itsID").height();
<iframe>
. Si vous travaillez à partir du document parent, alors oui, il y a un peu d'autres moyens.oui, vous pouvez exécuter parent de la fenêtre de fonction à partir de l'intérieur du cadre, et de passer des paramètres, comme ceci:
n'oubliez pas de définir la fonction FUNC_NAME dans la fenêtre parent