Script läuft nicht im IE
Tom Harrison
- javascript
0 wahsaga0 Marc Reichelt0 qp0 qp0 Philipp Hasenfratz
Hallo zusammen
Ich mache gerade für mich ein kleines Script für eine Stoppuhr.
Leider bin ich kein grosser Javascriptprogrammierer.
Nun habe ich mein Script mal so begonnen:
<script language="javascript">
function start(){
rstarten = new Date();
uhr = rstarten - starten
document.uhr.zeit.value = uhr
setTimeout("start()",1);
}
function zeitspeichern(){
starten = new Date();
start();
}
</script>
Nun mein erstes Problem ist, dass es nicht läuft im IE im Netscape 4.7 geht es allerdings.
Wo liegt das Problem?
Vielen Dank für eure Hilfe.
Gruss
Tom
hi,
Nun mein erstes Problem ist, dass es nicht läuft im IE im Netscape 4.7 geht es allerdings.
welche javascript-fehlermeldungen erhältst du? (kleines glebes dreieck in der statusleiste)
gruss,
wahsaga
welche javascript-fehlermeldungen erhältst du? (kleines glebes dreieck in der statusleiste)
Leider keine. Es passiert einfach nichts.
Mein Script sieht nun folgendermassen aus:
Schlussendlich sollte es mal eine Stoppuhr geben. Eigentlich habe ich schon ein fertiges Script dazu, doch möchte ich nun endlich auch verstehen was ich mache.
Vielen Dank schon mal im voraus.
Gruss aus der Schweiz
Tom
<script language="javascript">
function start(){
rstarten = new Date();
uhr = (rstarten - starten) / 1000;
document.uhr.zeit.value = uhr;
setTimeout("start()",1);
}
function zeitspeichern(){
starten = new Date();
start(starten);
}
</script>
<form name="uhr" method="post" action="">
<input type="submit" name="Submit" value="Starten" onClick="zeitspeichern()">
<input type="text" name="zeit">
</form>
Hi!
Dein Script enthält einige Denkfehler, hier kommt das Script das das tuen sollte was du möchtest:
-------------------------
<script language="javascript">
function start(starten){
rstarten = new Date();
uhr = rstarten - starten;
document.uhr.zeit.value = uhr;
setTimeout("start()",1);
}
function zeitspeichern(){
starten = new Date();
start(starten);
}
</script>
--------------------------
Hier ein paar Erklärungen dazu:
1. Jede Programmzeile wird grundsätzlich mit einem Semikolon ";" beendet.
2. Die Variable "starten", die du in der Funktion "zeitspeichern()" definierst, gilt NUR in dieser Funktion. Deshalb übergebe ich sie später beim Funktionsaufruf "start(starten)".
3. Rufst du die Funktion "zeitspeichern()" überhaupt irgendwie auf?
Viel Glück damit!
Marc Reichelt || http://www.marcreichelt.de/
hallo tom
das geht ... so (ie + firebird getestet ...)
<script language="javascript">
var starten;
var display;
function start(){
rstarten = new Date();
uhr = rstarten - starten
display.value = parseInt(uhr);
setTimeout("start()",100);
}
function zeitspeichern(){
display=document.f['zeit'];
starten = new Date();
start();
}
</script>
<body onload=setTimeout('zeitspeichern()',100)>
<form name=f>
<input type=text name=zeit value=''>
</form>
-----------------
auch ohne (;)
qp
hallo tom
noch traute ?
Nocheinmal -> so geht es.
<script language="javascript">
var uhr,starten; //diese vars global (zumindest uhr ist wichtig)
function start(){
rstarten = new Date();
uhr = (rstarten - starten) / 1000;
document.uhr.zeit.value = uhr;
setTimeout("start()",1);
}
function zeitspeichern(){
starten = new Date();
start(starten);
}
</script>
<form name="uhr" method="post" action="">
//hier brauchst du einen button der die function ruft <br>
//keinen submit der was verschickt. <br>
//mehr ises nicht ... <br>
<input type="button" value="Starten" onClick="zeitspeichern()">
<input type="text" name="zeit">
</form>
kopf hoch
qp
kopf hoch
qp
Hi qp und alle anderen.
Vielen Dank für die Hilfe. Es hat jetzt, doch geklappt...und ich war sicher nicht das letzte mal hier.
Noch kurz zu meinem Doppelposting von heute: Ich dachte einfach, wenn ich jetzt wieder auf mein erstes Posting von heute Antworte, dann sieht das niemand mehr, da es schon sehr weit unten ist...da wurde ich ja eines besseren belehrt.
Ich habe auch nicht erwartet, dass jemand von euch mein Script fertig schreibt. Eigentlich ist das Script schon fertig, doch ich möchte nun das selber schreiben und auch verstehen was ich dann mache...ich will schlussendlich nicht mehr nur von CopyPaste leben.
Also liebe Leute, wir hören uns wieder, denke ich mal :-)
Bis dahin noch alles gute und vielen Dank für die Hilfe.
gruss
tom
Halihallo Tom
[...]
Es scheint, als ob dein Doppelposting verschwunden ist, deshalb
(falls du es dort nicht gelesen hast) hier nochmals mein Statement
in Kurzform:
Falls du eine weitere Antwort wünschst, die dich der Lösung
näherbringen soll, so ist es keine akzeptable Vorgehensweise einfach
denselben Quellcode nocheinmal zu posten. Die Forumer müssen genau
erkennen, dass du dich mit den bereits gegebenen Antworten befasst
hast und dein Problem versucht hast zu lösen. Es ist überhaupt kein
Problem, falls du es nicht selber lösen konntest, dazu sind Foren da.
Aber: Eigeninitiative muss vorhanden sein! - Wenn z.B. ich erkenne,
dass du keine Motivation zeigst die Tipps und Lösungen der
Antwortenden zu untersuchen und nur darauf hoffst, dass jemand dein
Script zur Hand nimmt und versucht es zu verbessern, dann hat sich
für mich jedwelcher Einsatz und Motivation zum Antworten erledigt.
Viele Grüsse
Philipp