Timer
Mark B.
- javascript
Moin Moin zusammen,
ich habe ein Problem, bei dem mir vielleicht jemand helfen könnte:
Ich bin noch Anfänger,was JavaScript angeht und nun soll eine art Timer programmieren, der wie folgt arbeiten soll:
Der Timer soll Tage, Stunden und Minuten herunterzählen bis zu einem Zeitpunkt, der in der Zukunft liegt (z.B. Samstag, 16.8.2003 18.00).
Der Timer soll dabei immer von der aktuellen Zeit aus herunterzählen, also immer wenn ich die Seite aufrufe, soll er mir sagen, wie viele tage, Stunden und Minuten es noch bis Smstag den 16.8.2003 um 18.00 sind.
Ist sowas möglich? Und wenn ja, hat jemadn eine Idee, wie das funktionieren könnte?
thx Mark
Hi,
Ist sowas möglich?
ja; unter den Einschränkungen, die JavaScript per se mit sich bringt.
Und wenn ja, hat jemadn eine Idee, wie das funktionieren könnte?
Durch Verwendung des Date-Objektes.
Cheatah
Hi Cheatah,
thx für den Tip, aber ich glaube ich bin schlichtweg zu unfähig. Ich habe mit Hilfe des Date Objekts nicht gebacken gekriegt. ich habe es geschafft, dass er mir sagt wieviele Tage es noch sind, aber nicht, wieviele Stunden und Minuten. liegt das an meiner Unfähigkeit oder sind das welche von den Einschränkungen von java. Wenn ja, muss es nicht unbedingt java sein, kann auch ne andere Programmiersprache sein, hauptsache das Ergebnis wird geliefert.
Mark
Hi,
thx für den Tip, aber ich glaube ich bin schlichtweg zu unfähig.
nein, nur zu ungeduldig. Du bezeichnest Dich selbst als Anfänger und glaubst, innerhalb von 22 Minuten zu lauffähigen Ergebnissen zu kommen? Ich brauche bisweilen länger, und ich _weiß_ wie es geht.
ich habe es geschafft, dass er mir sagt wieviele Tage es noch sind, aber nicht, wieviele Stunden und Minuten.
Der Anfang ist gemacht. Mach weiter.
[...] Einschränkungen von java. Wenn ja, muss es nicht unbedingt java sein,
Die Einschränkung von Java ist, nicht das geringste mit JavaScript zu tun zu haben.
kann auch ne andere Programmiersprache sein,
Mit JavaScript bist Du schon an der richtigen Stelle. Erstens ist es damit weitaus einfacher als mit allen anderen clientseitigen Techniken, zweitens wirst Du mit nichts anderem eine ca. 80%ige Unterstützung finden.
Cheatah
Wenn ich dir meinen Entwurf schicken würde, würdest du nen Blick drauf werfen und mir dann sagen, wie ich rein vom Datum auch noch die Zeit miteinbeziehen und berechenen kann? Ich hab jetzt ziemlich viel rumprobiert, aber irgendwie war das alles nix. Es kam kein brauchbares ergebniss heraus.
Das wär echt geil, wenn du mir da helfen könntest.
Mark
Hi,
Wenn ich dir meinen Entwurf schicken würde,
ein Blick in meine Signatur sollte genügen. Bitte bleib im Forum.
Ich hab jetzt ziemlich viel rumprobiert, aber irgendwie war das alles nix. Es kam kein brauchbares ergebniss heraus.
Insbesondere sag uns bitte, _was_ Du mit _welchem_ Ergebnis versucht hast, und _welche_ Ergebnisse Deine Problemanalysen jeweils ergeben haben.
Cheatah
so siehts aus und ich weiss nicht weiter:
function Wochenende() {
// Date-Objekte erzeugen
var heute = new Date();
var Wochenende = new Fate(heute.getYear(), 7,16);
// Berechnung der Differenz
var differenz = Wochenende.getTime() - heute.getTime();
var tage = Math.floor(differenz / (1000 * 60 * 60 * 24));
// Ausgabe
document.write ("Es sind noch ");
document.write (tage)
document.write ("bis Samstag, 16.8. 18.00 Uhr")
}
Mein Problem ist jetzt, dass ich zu dem Datum 16.8. keine Uhrzeit hinzuschreiben kann, die dann auch ausgewertet wird, da ich weder weiss wie ich das beim Datum dazu schreiben muss, noch was ich in der Berechnung hinzufügen muss. Bei dieser Variante gibt er mit "8 tage" als Ergebnis.
Kannst du mir helfen?
Hi,
var Wochenende = new Fate(heute.getYear(), 7,16);
tja, so mancher wünscht sich ein neues Schicksal ;-) Zumindest brauchst Du Dich aber nicht zu wundern, dass nur das Datum da ist, wenn Du nicht mehr angibst. Richte Dich nach der Objektreferenz in SelfHTML.
Cheatah
Jaja, das ist schon klar (denke ich zumindest: mit getTime, oder?). Aber wie kann ich das mit berechenen???? Es würde mir auch langen, wenn er nur Stunden und minuten auswerfen würde.
(das mit dem "new Fate" war nur nen Tippfehler. Ich musste das abtippen, weil mein copy/paste gesponnen hat).
Dieses (1000*60*60*24) rechnet ja die millisekunden auf einen tag aus, aber wie kreig ich das hin,dass er das auf minuten und stunden ausrechnet statt auf Tage?
Mark
Hi,
Jaja, das ist schon klar (denke ich zumindest: mit getTime, oder?).
was ich meine ist bereits zu Beginn des Date-Kapitels beschrieben.
Dieses (1000*60*60*24) rechnet ja die millisekunden auf einen tag aus, aber wie kreig ich das hin,dass er das auf minuten und stunden ausrechnet statt auf Tage?
18 Uhr 24 Minuten und 11 Sekunden ist 1000*(18*3600 + 24*60 + 11) bzw. 1000*(18*60^2 + 24*60^1 + 11*60^0) Millisekunden nach Mitternacht.
Cheatah
Für die Date eingabe bin ich zu blöd und was ich eingesetzt habe kommt auch irgendwie nicht hin. würdest du das mal bei dem was ich vorhin geschrieben habe einsetzen?? das wär echt nett, thx
Mark
Hi,
Für die Date eingabe bin ich zu blöd
nein. Lies das Kapitel in SelfHTML gründlicher.
würdest du das mal bei dem was ich vorhin geschrieben habe einsetzen??
In diesem Forum wird lauffähiger Code nicht gepostet - darum heißt es _Self_HTML. Mit spezifischen Rückfragen wirst Du immer wieder neue Anstöße von uns bekommen, aber das Ergebnis produzierst Du selbst.
Cheatah
Naja egal, trotzdem vielen Dank, auch wenn es nicht geklappt hat, hab ich trotzdem was gelernt. Wenn ich mal wieder ne Frage hab, weiss ich jetzt ja, wo ich mich schlau machen kann.
thx Mark
Hallo,
Als Programmierer sollte man sich wirklich einen Moment Zeit nehmen, sich mit dem Datumsformat nach DIN 5008 zu befassen. Das Format 14.8.2003 ist veraltet und sollte gerade auf Webpräsenzen, die ja für die Zukunft geschrieben werden, nicht mehr benutzt werden. Daher immer 2003-08-14 verwenden!
In folgendem Duden-pdf findest Du mehr Infos:
http://www.duden.de/service/download/textverarbeitung_duden1.pdf
Zwischen Studen und Minuten kommt übrigens immer ein Doppelpunkt: 13:09 nicht 13.09 Uhr!
Heiner