Mee scrollen van de paginas in de lengte

Status
Niet open voor verdere reacties.

Knijntjuh

Gebruiker
Lid geworden
31 dec 2005
Berichten
73
Hallo,

weet iemand hoe ik pagina's in de lengte laat lopen,
in de index? Want met divstyles en frames, moet je een
een groottevan breedte en lengte aangeven, en daar komt die tekst nou in.
Maar ik heb dan bijv een layout in tabellen. En in de tekstvak wil ik
de tekst helemaal naar onder laten scrollen zodat de layout ook mee
scrolt. Alleen dat lukt wel als ik op elke pagina de index zet,
maar heb bij andere sites gezien,dat de pagina blanco is terwel
de index alleen maar de lay staat, dus niet op de andere pagina's..
en dat scrolde wel mee.. Bedankt als je me kunt helpen!

Groetjes,
Knijntjuh
 
Ik weet niet of ik je vraag helemaal goed begrijp, maar je wilt dus eigenlijk een inline frame dat van hoogte veranderd door zich aan te passen op de hoogte van de pagina die erin staat? Dat kan met javascript! Zo kun je het doen:

Zet dit in de inhoud van het head element waar ook het inline frame staat:
HTML:
<script type="text/javascript">
function adjustIFrameSize (iframeWindow) {
  if (iframeWindow.document.height) {
    var iframeElement = parent.document.getElementById
(iframeWindow.name);
    iframeElement.style.height = iframeWindow.document.height + 'px';
  }
  else if (document.all) {
    var iframeElement = parent.document.all[iframeWindow.name];
    if (iframeWindow.document.compatMode &&
        iframeWindow.document.compatMode != 'BackCompat') 
    {
      iframeElement.style.height = 
iframeWindow.document.documentElement.scrollHeight + 5 + 'px';
    }
    else {
      iframeElement.style.height = 
iframeWindow.document.body.scrollHeight + 5 + 'px';
    }
  }
}
</script>
En dit is dan het het inline frame. Die plaats je in het zelfde bestand als waar het bovenstaande script in staat, maar dan in de inhoud van het body element.
HTML:
<iframe src="pagina.html" frameborder="0" scrolling="no" width="700" 
id="iframeName" name="iframeName"></iframe>
En als laatste het onload attribuut met een bijbehorende waarde in de begintag van het body element zetten. Dat wordt dus zo:
HTML:
<body onload="if(parent.adjustIFrameSize){parent.adjustIFrameSize(window)};">
Als het goed is moet het nu werken!

Als je over PHP beschikt kun je het nog veel simpeler doen. Je plaatst gewoon waar de pagina moet komen dit:
PHP:
<?php include("pagina.html"); ?>
En klaar is Knijntjuh.:D
Maar dat kan dus alleen als je PHP ondersteuning hebt

Succes!
 
Dus dat éérste in de tabel zetten waar frame ook staat?
De 2e gewoon in de body waar die frame ook staat, pagina dus?
En de 3e, in elke pagina?
 
Nee, dat eerste in de head zetten, dat tweede vervangen door het iframe en dat derde inderdaad in elke pagina. Ik zal even een voorbeeld geven hoe het zou kunnen worden:

Dit is index.html:
HTML:
<html>
 <head>
  <script type="text/javascript">
function adjustIFrameSize (iframeWindow) {
  if (iframeWindow.document.height) {
    var iframeElement = parent.document.getElementById
(iframeWindow.name);
    iframeElement.style.height = iframeWindow.document.height + 'px';
  }
  else if (document.all) {
    var iframeElement = parent.document.all[iframeWindow.name];
    if (iframeWindow.document.compatMode &&
        iframeWindow.document.compatMode != 'BackCompat') 
    {
      iframeElement.style.height = 
iframeWindow.document.documentElement.scrollHeight + 5 + 'px';
    }
    else {
      iframeElement.style.height = 
iframeWindow.document.body.scrollHeight + 5 + 'px';
    }
  }
}
  </script>
  <title>Titel van de pagina</title>
 </head>
 <body bgcolor="#FF0000">
  <table width="750" align="center"><tr><td>
   <iframe src="pagina.html" frameborder="0" scrolling="no" width="700" 
id="iframeName" name="iframeName"></iframe>
  </td></tr></table>
 </body>
</html>

En dit zou dan pagina.html kunnen zijn:
HTML:
<html>
 <body onload="if(parent.adjustIFrameSize){parent.adjustIFrameSize(window)};">

Dit is de inhoud van de pagina

 </body>
</html>

Ik hoop dat het nu wat duidelijker is geworden. :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan