Objekt "has no properties"
Volker Nebelung
- javascript
0 derletztekick0 wahsaga
Ich habe ein div-Element in einer HTML-Datei definiert:
<div id="linkbeschreibung"></div>
und will den Inhalt und Position dynamisch mittels JS ändern.
Dazu positioniere ich dieses Objekt zuerst außerhalb des Fensters, indem ich in einer externen JS-Datei außerhalb einer function aufrufe:
getElementById('linkbeschreibung').style.left = -500 + 'px';
Allerdings gibt mir die Javascript-Konsole aus:
getElementById("linkbeschreibung") has no properties.
Es funktioniert zwar alles wie gewünscht, aber ich wüßte gerne warum die Meldung kommt. Eventuell daran, dass die JS-Anweisung Browser-intern in der HTML-Datei vor dem div-Element geladen wird und deshalb noch keine Id "linkbeschreibung" vorhanden ist?
Danke im Voraus.
Gruß, Volker Nebelung
Hallo Volker Nebelung,
getElementById('linkbeschreibung').style.left = -500 + 'px';
Du hast überlesen, das getElement(s)ByXYZ() Methoden des Objektes document sind und demnach auch an dieses zu knüpfen sind.
Mit freundlichem Gruß
Micha
hi,
Eventuell daran, dass die JS-Anweisung Browser-intern in der HTML-Datei vor dem div-Element geladen wird und deshalb noch keine Id "linkbeschreibung" vorhanden ist?
Natürlich kannst du auf ein Element nicht zugreifen, bevor es existiert.
Wenn per DOM Elementknoten manipuliert werden sollen, triggert man dies idR. über den Eventhandler onload - der feuert erst, wennn das Dokument (und seine weiteren Bestandteile) komplett geladen, und der Elementenbaum aufgebaut ist.
gruß,
wahsaga