Kann Objekt mittels "getElementsByTagName" nicht ansprechen
Daniel
- javascript
0 Thomas Meinike0 Daniel
0 MudGuard
Hallo,
Da ich in Javascript nicht gerade der Beste bin, möchte ich Euch um Hilfe bitten.
Ich will eine Zeitausgabe machen, die sich jede Sekunde aktualisiert, damit man immer die aktuelle Zeit sieht. Nun bin ich laut Selfhtml vorgegangen, aber ich kann das Objekt in dem die Zeitausgabe erfolgen soll (in diesem Fall ein <p> Tag)nicht ansprechen. Die betreffenden Codezeilen sehen folgendermassen aus:
<p>text</p>
...
<script language="javascript">
<!--
function showdate()
{
var actualdate = new Date();
document.getElementsByTagName("p")[0].firstChild.data = actualdate;
window.setTimeout("showdate();",1000);
}
showdate();
//-->
</script>
...
Der Fehler den mir JS zurückgibt ist "...first.Child ist kein Objekt"
Es ist aber gesetzt und ich habe das genau laut Selfhtml ausgegeben, es ist der 1. <p> Tag im document, also muss der Array [0] sein.
Das Objekt wird auch vor dem Funktionsaufruf erzeugt.
Wäre sehr dankbar um Hilfe,
Grüsse,
Daniel
Hallo,
Der Fehler den mir JS zurückgibt ist "...first.Child ist kein Objekt"
Es ist aber gesetzt und ich habe das genau laut Selfhtml ausgegeben, es ist der 1. <p> Tag im document, also muss der Array [0] sein.
Das Objekt wird auch vor dem Funktionsaufruf erzeugt.
Bist Du da sicher? Setze mal den ersten Aufruf von showdate() so an:
<body onload="showdate()">
und lege die Funktion selbst in den HEAD.
MfG, Thomas
Hallo Thomas,
Danke für die prompte Antwort,ich bin jetzt ganz zufällig auf den Fehler draufgekommen, es muss anscheinend ein Text zwischen dem <p></p> Tag voreingetragen werden, wenn da nichts drinnsteht, gibt er einen Fehler aus, ich denke das das Objekt dann vielleicht noch nicht instanziert wurde und deswegen nicht ansprechbar ist.
mfg,
Daniel
Hallo,
Danke für die prompte Antwort,ich bin jetzt ganz zufällig auf den Fehler draufgekommen, es muss anscheinend ein Text zwischen dem <p></p> Tag voreingetragen werden, wenn da nichts drinnsteht, gibt er einen Fehler aus, ich denke das das Objekt dann vielleicht noch nicht instanziert wurde und deswegen nicht ansprechbar ist.
Ohne Textknoten gibt es auch kein firstChild.
MfG, Thomas
Hi,
document.getElementsByTagName("p")[0].firstChild.data = actualdate;
Der Fehler den mir JS zurückgibt ist "...first.Child ist kein Objekt"
first.Child oder firstChild?
Und gibt es das Element zum Zeitpunkt der (ersten) Script-Ausführung auch schon?
cu,
Andreas