Aktualisieren mit JS

martinibook

martinibook

Aktives Mitglied
Thread Starter
Dabei seit
20.08.2005
Beiträge
8.730
Reaktionspunkte
350
Hallo,
Ich würde gerne eine Seite alle 10 oder 5 sec neu laden lassen, das geht wahrscheinlich nur mit JavaScript. Hat da jemand ein Skript für?

Martin
 
...aber sicher doch!

Code:
<script>

//refresh time is in "minutes:seconds" 
var timer="0:30"

if (document.images){
var CoffeeParse=timer.split(":")
CoffeeParse=CoffeeParse[0]*60+CoffeeParse[1]*1
}
function refreshtime(){
if (!document.images)
return
if (CoffeeParse==1)
window.location.reload()
else{ 
CoffeeParse-=1
currentminutes=Math.floor(CoffeeParse/60)
currentsec=CoffeeParse%60
if (currentminutes!=0)
currenttime=currentminutes+" minutes and "+currentsec+" seconds until page refresh!"
else
currenttime=currentsec+" seconds left until page refresh!"
window.status=currenttime
setTimeout("refreshtime()",1000)
}
}

window.onload=refreshtime
//-->
</script>


EDIT: Eine Zeit von 5 Sekunden erscheint mir aber verdammt kurz. Wenn da jemand mit einem Modem vorbeikommt, dann kommt der nicht mehr zum Klicken...
 
Zuletzt bearbeitet:
martinibook schrieb:
[...] das geht wahrscheinlich nur mit JavaScript.
Ist durchaus auch ohne möglich:

<meta http-equiv="refresh" content="5; url=http://deine-seite.de/" />

Bei content einfach die 5 durch die Sekunden ersetzen und die korrekte URL eintragen.
 
Ich habe das jetzt mit nem Meta gemacht, klappt ganz gut.

Martin
 
martinibook schrieb:
Ich habe das jetzt mit nem Meta gemacht, klappt ganz gut.

Martin
jap, ist auch besser, da nicht jeder user javascript in seinem browser aktiviert hat!
 
Für sich ständig aktualisierende Sachen, wäre AJAX, was gerade ganz hoch im Gerede ist, ne ganz gute Lösung. Ist einigermaßen kompliziert, aber wenn's läuft in manchen Bereichen ganz schick.
 
Ich halte vom sogenannten "AJAX" absolut garnix. :) Liegt wahrscheinlich aber auch daran dass es vom Opera nicht unterstützt wird. Und alles was vom Opera nicht unterstützt wird ist Teufelszeug. :D Bei speziellen Webanwendungen ist es sicherlich sinnvoll. Aber solange es ohne geht...einen simplen Reload muss man ja nicht unnötig verkomplizieren. :)
 
Ich denke, meine Anwendung kann man auch komplett in JS schreiben, aber mit PHP und reload geht es natürlich auch.

Martin
 
@dms: Irgendwie wusste ich, dass Du das sagst. :)

Es ist ja auch in einer Weise ein Hack und nicht besonders kompatibel, *aber* man kann sich's mal anschaun. Deshalb auch meine Einschränkung „in manchen Bereichen“. Würde's (noch) nicht auf ne geschäftliche Seite setzen, es sei denn es gibt eine Art Fallback.

@martinibook: Was machst Du denn? Vielleicht ist's ja ganz einfach.
 
Es ist super einfach und einige werden jetzt mit dem Kopf gegen die Wand laufen:
Eine Stoppuhr.
Die vergangene Zeit wird per Timestamp berechnet und dann wird die Differenz ausgegeben. Das ganze funktioniert mit PHP, daher brauche ich einen Reload.
Aber mit JS ist das ganze sicher sinnvoller :)

Martin
 
Jakob schrieb:
@dms: Irgendwie wusste ich, dass Du das sagst. :)
War bestimmt nicht schwer drauf zu kommen, dass ich so denke. :)

Wenn ich hin und wieder nichts zu solchen Themen schreibe, dann liegt's nur daran dass ich mir denke "Nicht schon wieder". ;)

AJAX ist mit Sicherheit eine sehr interessante Sache. Für private Anwendungen oder solche bei denen man dem Nutzer einen bestimmten Browser zumuten kann (z.B. Admin-Module) würde ich es auch durchaus einsetzen. Bisher war es allerdings noch nicht notwendig.

@martinibook

Ist denn eine Serverkommunikation notwendig? Kommt der Timestamp aus einer DB oder wird die berechnete Zeit dann weiterverarbeitet?

Wenn nicht, lässt sich das wirklich sehr leicht in purem JS umsetzen. Da braucht man nicht mal selbst was entwickeln. Google findet da schon einiges. Erster Treffer: http://jumk.de/stoppuhr/
 
Ja es ist einfach nur ne Stoppuhr, es ist letztendlich egal, welcher Timestamp das ist. Aber da ich ja nur PHP kann...

Martin
 
Zurück
Oben Unten