droom: document.getElementById() wird nicht mehr erkannt?

Nachdem ich 1000mal versucht habe, auf ein DIV-element mit der getElementById-Funktion zu greifen, habe ich folgendes Skript geschrieben:

<script type="text/javascript">
var oElement, oStyle;
if (document.getElementById) {
  if ((oElement = document.getElementById('pfad'))) {
    if ((oStyle = oElement.style)) {
      oStyle.backgroundColor = "#000000";
    }
      else{
      alert("nonono");
      }
  }
  else{
  alert("nono");
  }
}
else {
alert("no");
}
</script>
....
<div id="pfad">Home: News</div>

Das Ergebnis: Ein alert-fenster mit "nono". Obwohl ich im gleichen Dokument das DIV-Element hat.

  1. Hallo droom.

    var oElement, oStyle;
    if (document.getElementById) {
      if ((oElement = document.getElementById('pfad'))) {
      […]
      else{
      alert("nono");
      }
    }
    […]
    </script>
    ....
    <div id="pfad">Home: News</div>

    Das Ergebnis: Ein alert-fenster mit "nono". Obwohl ich im gleichen Dokument das DIV-Element hat.

    Das liegt daran, dass du auf ein Objekt zuzugreifen versuchst, was zum Zeitpunkt der Abarbeitung des JS-Codes noch nicht existiert. Du möchtest also warten, bis das Dokument fertig geladen wurde:

    window.onload = function() {  
      
      // Dein Code  
    };
    

    Einen schönen Dienstag noch.

    Gruß, Mathias

    --
    ie:% fl:| br:< va:) ls:& fo:) rl:( n4:~ ss:) de:] js:| mo:| zu:)
    debian/rules
    1. Da hat einer aber Recht gehabt. Danke schön Matthias! ^^