Page 1 of 1

["SOLVED"]Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Sat Jan 09, 2010 10:02 pm
by mboerma
Hoi,

Ik probeer via {embed} een iframe binnen een pagina toe te voegen. Dit lukt me aardig, op een punt na. De iframe is niet lang/hoog genoeg om de hele embedded pagina te tonen. Ik kan dat alleen voor elkaar krijgen door de omliggende div op te rekken met height:410%; of iets dergelijks. Heeft iemand enig idee waar en hoe ik dit voor elkaar zou kunnen krijgen?

Misschien zijn er nog zaken die ik moet laten weten om een goed antwoord te kunnen geven. Laat me dat dan ook graag weten.

Re: Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Sat Jan 09, 2010 10:26 pm
by Rolf
heb je al de '#myframe' in de stylesheet voor de hoogte? grt. rolf

Re: Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Sat Jan 09, 2010 10:29 pm
by mboerma
Ja,

#myframe {
height: 100%;
max-height:none;
padding-bottom:20px;
margin-bottom:10px;
}

Het maakt niet uit wat ik er neerzet. Alleen met percentages hoger dan 100% of met bijv. 1500px wordt er meer toegevoegd.

Re: Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Sun Jan 10, 2010 7:35 am
by RonnyK
mboerma,

de iframe die je probeert te includen, staat die pagina op je eigen domein? Vanaf een ander domein kun je namelijk geen hoogte terugkrijgen voor automatische hoogte-setting. Enkel binnen je eigen domein is dat wel mogelijk.

Ronny

Re: Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Sun Jan 10, 2010 8:39 am
by mboerma
RonnyK wrote: mboerma,

de iframe die je probeert te includen, staat die pagina op je eigen domein? Vanaf een ander domein kun je namelijk geen hoogte terugkrijgen voor automatische hoogte-setting. Enkel binnen je eigen domein is dat wel mogelijk.

Ronny
Hi Ronny,

Nee, die staat ergens anders. Dank voor deze info. Je kan lang zoeken naar zoiets als dit. Weet je misschien nog een manier waarop het wel kan? Geen iframe? Misschien de pagina eerst ophalen, en regelmatig updaten, en lokaal zetten en dat tonen?

Re: Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Sun Jan 10, 2010 10:04 am
by Rolf
Variabele hoogtes van iframes is inderdaad moeilijk.
Height: 100% is nml. de hoogte van je scherm en niet de hoogte van de inhoud...
Je kan lang zoeken naar zoiets als dit.
Je zou in Google eens moeten zoeken op iframe, daar vind je meer informatie.
Weet je misschien nog een manier waarop het wel kan? Geen iframe? Misschien de pagina eerst ophalen, en regelmatig updaten, en lokaal zetten en dat tonen?
Afhankelijk van de bron zou je wellicht ook met RSS kunnen werken, maar dan moet de bronwebsite dit wel ondersteunen...

Heb je een voorbeeld? Linken...

Grt. Rolf  :)

Re: Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Sun Jan 10, 2010 10:16 am
by mboerma
Het gaat om deze pagina:

http://voorraad.wheelerdelta.nl/4d873/

die ik wil plaatsen in deze website:

http://woossh.com/projecten/vandamv2/cmsms/

Re: Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Sun Jan 10, 2010 10:43 am
by Rolf
Wat je zou kunnen doen is de layout van de website fixed maken. Alleen je header is vrij groot dus mensen met een klein scherm krijgen dan een korte content...

Zoiets als:

Code: Select all

header {
height: 30%;
}

content {
height: 59%; {* ook ongeveer de iframe hoogte *}
}

footer {
height: 10%;
}
De header en footer blijven dan altijd boven en onderin het scherm.

Rolf

Re: Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Sun Jan 10, 2010 11:23 am
by mboerma
Dank je. Ja, dat is een optie, maar zoals je schrijft werkt dit niet altijd goed bij mensen met een klein scherm. En ik vind het ook niet erg mooi. Ik ga eens opzoek naar een manier om die externe pagina binnen te halen op mijn eigen server, met een scriptje ofzo, en dan de resultaten te tonen. Als ik eruit ben dan laat ik het weten.

Re: Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Sun Jan 10, 2010 4:52 pm
by mboerma
Ik heb er een dagje op gestudeerd, maar ik heb niet echt iets toepasbaars gevonden. Het probleem blijft het feit dat iets niet op mijn eigen server staat, en ik er dus geen controle over heb. Ik heb nog lopen rommelen met PHP cURL, maar dit hielp niks. De linkjes die op de opgehaalde pagina staan doen het niet. Het wordt dus toch iets met een scrollbar ben ik bang. Nu nog even de keuze maken tussen {embed} of {pi_iframe}. Iemand nog voorkeuren?

Dank voor alle hulp, wederom.

Re: ["SOLVED"]Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Sun Jan 10, 2010 5:53 pm
by RonnyK
Ikzelf gebruik altijd pi_iframe. Dit omdat je voor embed, altijd een extra call mee moet geven in de metadata.

Ronny

Re: ["SOLVED"]Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Tue Jan 12, 2010 1:43 pm
by Gamonon
{embed} en Iframe zijn vaak lastig onder controle te houden. Over Iframe is heel veel discussie gevoerd en nog steeds. Ook compatibiliteit met andere browsers is vaak dubieus. Ik blijf zelf het liefst ver van deze werkwijze. Ik heb zelf ook in het verleden wat met content import gerommeld en vond nog een eenvoudig PHP script. Ik heb even geen tijd om het te proberen maar heb hem wel even aan jouw situatie aangepast. Als je dit in een tabel met een fixed kolom plaatst, zou het moeten kunnen werken. Je blijft altijd wel het probleem houden dat als de source veranderd, het niet of niet goed meer werkt. Het zou mooi zijn als de source als RSS feed aangeboden wordt, dan ben je helemaal klaar.
Succes!

Code: Select all

<?php

$config['url']       = "http://voorraad.wheelerdelta.nl/4d873/"; // url van de bronfile
$config['start_tag'] = "<table width="100%">"; // waar moet begonnen worden 
$config['end_tag']   = "</table>"; // waar moet gestopt 
$config['show_tags'] = 0; // moeten tags zichtbaar zijn 1 = ja, 0 = nee

class grabber
{
	var $error = '';
	var $html  = '';
	
	function grabhtml( $url, $start, $end )
	{
		$file = file_get_contents( $url );
		
		if( $file )
		{
			if( preg_match_all( "#$start(.*?)$end#s", $file, $match ) )
			{				
				$this->html = $match;
			}
			else
			{
				$this->error = "Tags kunnen niet gevonden worden.";
			}
		}
		else
		{
			$this->error = "URL kan niet gevonden worden!";
		}
	}
	
	function strip( $html, $show, $start, $end )
	{
		if( !$show )
		{
			$html = str_replace( $start, "", $html );
			$html = str_replace( $end, "", $html );
			
			return $html;
		}
		else
		{
			return $html;
		}
	}
}

$grab = new grabber;
$grab->grabhtml( $config['url'], $config['start_tag'], $config['end_tag'] );

echo $grab->error;

foreach( $grab->html[0] as $html )
{
	echo htmlspecialchars( $grab->strip( $html, $config['show_tags'], $config['start_tag'], $config['end_tag'] ) ) . "<br>";
}

?>



Re: ["SOLVED"]Hoogte van een iframe automatisch vergroten zonder scrollbars

Posted: Tue Jan 12, 2010 7:30 pm
by mboerma
Hi Gamonon,

Ik ga je oplossing eens proberen.

De pi_iframe plugin werk trouwens makkelijker dan die embeded mogelijkheid. Meer controle.

Dank je,
Maarten