dag mensen,

Weten jullie wat hier mis gaat? Ik krijg een javascript foutmelding die zegt:
Fout: document.getElementById("inhoud") is null
Bron bestand: http://localhost/test/resolutie.js
Regel: 29


Hier het script:

 var viewportwidth;
 var viewportheight;
 
 // the more standards compliant browsers (mozilla/netscape/opera/IE7) use window.innerWidth and window.innerHeight
 
 if (typeof window.innerWidth != 'undefined')
 {
      viewportwidth = window.innerWidth,
      viewportheight = window.innerHeight
 }
 
// IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)

 else if (typeof document.documentElement != 'undefined'
     && typeof document.documentElement.clientWidth !=
     'undefined' && document.documentElement.clientWidth != 0)
 {
       viewportwidth = document.documentElement.clientWidth,
       viewportheight = document.documentElement.clientHeight
 }
 
 // older versions of IE
 
 else
 {
       viewportwidth = document.getElementsByTagName('body')[0].clientWidth,
       viewportheight = document.getElementsByTagName('body')[0].clientHeight
 }
document.getElementById('inhoud').style.width=viewportwidth - 241+'px';


Ik kan de fout niet ontdekken!
Is er een element met het id "inhoud"?

En is dat element er al als het Javascript wordt uitgevoerd?
De JavaScript include ik net zoals de CSS direct bij het openen van de pagina. Inhoud is een div die er zo uit ziet:

<div id="inhoud">
hallo
</div>
Je moet de regel

document.getElementById('inhoud').style.width=viewportwidth - 241+'px';

onder je html zetten.
Dus

<div id="inhoud">
hallo
</div>
<script type="text/javascript">
document.getElementById('inhoud').style.width=viewportwidth - 241+'px';
</script>


of die regel in een functie stoppen, en die functie openen onder dat stukje html

Reageren