Johantrax
Terugkerende gebruiker
- Lid geworden
- 18 okt 2006
- Berichten
- 1.268
Ik ben zonet op een eigenaardigheidje gebotst.
Ik heb een kleine pagina bestaande uit 3 divs - een container om te centreren een linkerkolom met de paginainhoud en een rechterkolom met een menu.
De Body:
Nu heb ik een kleine functie geschreven die de hoogte van de container aanpast aan de hoogte van linker/rechterkolom. Deze staat in de head:
Nu had ik het idee om die functie op te roepen als alle content ingeladen was. Dus in de head tussen bovenvermelde scripttags na de functiedeclaratie kwam dan dit:
Waarop het beoogde resultaat niet tevoorschijn kwam, maar wel volgende foutboodschap kwam bovendrijven:
Ik heb de functieoproep nu onderaan in de body gezet, wat ook werkt. De aanroep moet natuurlijk ver genoeg in de pagina gebeuren, omdat alle div's die ik aanroep gekend moeten zijn binnen de DOM-structuur van m'n site
Ik was echter van de mening dat de inhoud van de pagina ook al volledig gekend was wanneer het onloadstatement werd uitgevoerd en zodoende ook de DOM-structuur al gekend was. Blijkbaar niet dus..
Kan iemand hier me dan uitleggen, of een link posten (zowel nederlands als engels is ok) over wanneer het onloadstatement dan eigenlijk precies wordt uitgevoerd ?
Dank,
--Johan
Ik heb een kleine pagina bestaande uit 3 divs - een container om te centreren een linkerkolom met de paginainhoud en een rechterkolom met een menu.
De Body:
PHP:
<div id="container" style="width: 600px; margin-left: auto; margin-right: auto;">
<div id="links" style="width: 400px; margin: 10px; float: left;">
linkerkolom<br /><br /><br /><br />meer inhoud
</div>
<div id="rechts" style="width: 150px; margin: 10px; float: right;">
menuinhoud
</div>
</div>
PHP:
<script language="JavaScript" type="text/javascript">
<!-- hide van oudere browsers
function verleng() {
var h_links = document.getElementById('links').offsetHeight;
var h_rechts = document.getElementById('rechts').offsetHeight;
if (h_links > h_rechts)
document.getElementById('container').style.height = h_links + "px";
else
document.getElementById('container').style.height = h_rechts + "px";
}
//-->
</script>
Nu had ik het idee om die functie op te roepen als alle content ingeladen was. Dus in de head tussen bovenvermelde scripttags na de functiedeclaratie kwam dan dit:
PHP:
window.onload = verleng();
Code:
ERROR: document.getElementById("links") has no properties.
Ik heb de functieoproep nu onderaan in de body gezet, wat ook werkt. De aanroep moet natuurlijk ver genoeg in de pagina gebeuren, omdat alle div's die ik aanroep gekend moeten zijn binnen de DOM-structuur van m'n site
Ik was echter van de mening dat de inhoud van de pagina ook al volledig gekend was wanneer het onloadstatement werd uitgevoerd en zodoende ook de DOM-structuur al gekend was. Blijkbaar niet dus..
Kan iemand hier me dan uitleggen, of een link posten (zowel nederlands als engels is ok) over wanneer het onloadstatement dan eigenlijk precies wordt uitgevoerd ?
Dank,
--Johan