hoogte van een iframe

Status
Niet open voor verdere reacties.

bn2vs

Terugkerende gebruiker
Lid geworden
18 aug 2007
Berichten
1.705
Is er een manier om de hoogte van een iframe automatisch aan te passen aan de inhoud, maar met een bovenlimiet? Ik zit al ff te zoeken maa vind nix...

Iemand enig idee?

Alvast bedankt :D
 
Dan vult mn iframe automatisch de hele pagina...
Nogal dom als er maar 1 regel tekst staat op de pagina in het iframe...
 
Nee, is niet van toepassing...

Iemand die een oplossing weet voor mn probleem?
 
Misschien een beetje laat, maar ik ben hier een tijdje naar opzoek geweest en heb het volgende script geschreven wat ik gebruik om een iframe naar aanleiding van de inhoud te resizen. Dit script heb ik geplaatst in de pagina die in je iframe komt (Weet niet of dit voor jou een optie is).

Code:
<script language="Javascript" type="text/javascript">
<!--
function resize()
{
	if(parent)
	{
	
	var W3CDOM = (document.createElement && document.getElementsByTagName);
	if(window.event) docHeight = document.body.scrollHeight 
	else docHeight = document.body.offsetHeight;
	parent.document.getElementById('forum').style.height = (docHeight + 10);
	parent.document.getElementById('toplink').focus();
	parent.document.body.style.height=docHeight+200;
	}
	
}
//-->
</script>

in het kort: het script zoekt de hoogte van het het document in het iframe. Vervolgens maakt hij de hoogte van het iframe (die bij mij de id 'forum' heeft) hieraan gelijk (en 10 pixels extra ivm wat scrollbalkjes, margins, dat weet ik niet precies). Omdat hij dit telkens doet wanneer de pagina vernieuwt, zit je soms helemaal onderaan de pagina. de focus is gericht op een link bovenaan de pagina waar het iframe inzit, zodat je altijd boven aan de pagina zit. Dat is misschien niet zo netjes. Vervolgens past hij nog de hoogte dit laatsgenoemde document aan, omdat anders het iframe buiten het oorspronkelijke document gaat.

Voor wat jij wil kun je dus na het vinden van de docHeight een regel toevoegen zoals
Code:
if(docHeight > 600){ docHeight = 600; }
waardoor de hoogte nooit meer wordt dan 600 (610) pixels.

Dit werkt bij mij voor firefox, internet explorer en safari op windows.

succes
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan