window.setTimeout und globale Variablen
Pit
- javascript
Hi, ich möchte gerne etwas anzeigen, was jede Sekunde aktualisiert wird. Mein Versuch ist an http://selfhtml.teamone.de/javascript/beispiele/aufenthaltsdauer.htm angelehnt. Stark vereinfachter Beispielcode unten. Mozilla, Opera und MSIE zeigen gerade noch die Zahl "1" auf dem Bildschirm an, dann hängen sie fest. In der mit ERROR markierten Zeile gibt es bei Mozilla folgende Fehlermeldung:
Error: doSomething is not defined
Womit hängt das Problem zusammen? Bin für jeden Tipp dankbar.
Pit
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>JavaScript Problem</title>
</head>
<body>
<script type="text/javascript">
<!--
var i = 1;
function doSomething()
{
document.write(i);
window.setTimeout('doSomething()',1000); // ERROR
}
window.setTimeout('doSomething()',1000);
// -->
</script>
</body>
</html>
Hallo Pit
document.write(i);
Das überschreibt dein gesamtes Dokument.
Die Funktion doSomething() ist dann also nicht mehr vorhanden.
Verwende zur Ausgabe eine Funktion, die einen Inhalt einer bestehenden Seite
ändern kann.
Auf Wiederlesen
Detlef
Ah, das heißt sowas wie alert() oder DHTML, richtig? Also, alert() funktioniert schon mal. Dann werd ich jetzt mal ein bisschen was über DHMTL lesen, direkt ins Dokument schreiben kann man so jedenfalls nicht; das hab ich jetzt gelernt. Besten Dank!
Pit