</div> schrijf vóór het javascript. De foutmelding: Fout "Uncaught TypeError: kan eigenschap 'innerHTML' van null niet instellen" Mijn"> </div> schrijf vóór het javascript. De foutmelding: Fout "Uncaught TypeError: kan eigenschap 'innerHTML' van null niet instellen" Mijn"> </div> schrijf vóór het javascript. De foutmelding: Fout "Uncaught TypeError: kan eigenschap 'innerHTML' van null niet instellen" Mijn" />

Fout bij het vinden van element door javascript

Dit script kan geen "uitvergroting" vinden tenzij ik <div id = "bannersize"> </div> schrijf vóór het javascript.

De foutmelding:

Fout "Uncaught TypeError: kan eigenschap 'innerHTML' van null niet instellen"

Mijn codefragment:

<script> 
function dropbox(menu){
    this.tmpmenu = document.getElementById(menu);
    this.tmpmenu.innerHTML = 'Hello'+this.tmpmenu;
}
bannersize = new dropbox('bannersize'); 
</script>
<div id="bannersize"></div>
0

1 antwoord

It can't find it because at the time the code is executed the element is not in the DOM. Script blocks are executed as soon as the browser sees the </script> closing tag. Your code is before the element, so when it runs the HTML parser will not yet have encountered the element with the "id" you're looking for.

Zet uw code na op het element, of voer het in een "load" event handler voor het document in.

3
toegevoegd
Bedankt Pointy, ik bewerk het en het is werk :) <script> window.onload = function() {functie dropbox (menu) {this.tmpmenu = document.getElementById (menu); this.tmpmenu.innerHTML = 'Hello' + this.tmpmenu; } bannersize = nieuwe dropbox ('bannersize'); } </script> <div id = "bannersize"> </div>
toegevoegd de auteur user1477982, de bron