2010-09-28 4 views
1

J'ai actuellement deux pages html, une page hébergée sur le serveur, et une page hébergée par le client, les deux sur le même domaine.Avoir une page enfant redimensionner le parent sans appeler le script hébergé parent?

La page du serveur comporte un iframe source de la page client.

Je souhaite que la page parent iframe soit redimensionnée en fonction du contenu des pages enfants. Pour ce faire, j'ai un peu de javascript qui se trouve sur les deux pages. La page client (enfant) détermine ses dimensions, puis invoque une fonction définie sur la page parent qui redimensionne l'iframe (il est très possible que ce même script ne soit placé que sur la page parent pour y parvenir ...).

Est-il possible que la page client redimensionne directement le cadre if du parent sans appeler le script parent? Comme nous sommes le propriétaire de la page du client, si nous pouvons isoler ce code sur la page enfant, cela rendra tout changement de code beaucoup moins douloureux.

Répondre

2

Oui; vous pouvez utiliser le window.frameElement property dans la page enfant pour obtenir l'élément dans la page parent qui héberge la page enfant.

Ainsi, vous pouvez déplacer le code de redimensionnement de la page parent vers la page enfant et redimensionner window.frameElement.

+0

Quel est l'avantage de cette approche par rapport à quelque chose comme 'parent.document.getElementById ('myIframeId')'? – Alan

+0

dans le cas de domaine croisé vous ne pouvez pas accéder au parent, mais j'espère encore window.frameElement fonctionnera – Sarath

+0

nooooo :(.. il ne fonctionnera pas – Sarath