Ich fände es nützlich, unter "Ladezeitpunkt" direkt einen Aktualisierungs-Knopf zu setzen (Code siehe unten). Auch die Anzeige der Aufenthaltsdauer wäre nicht übel (Code mit Reload-Button kombiniert siehe unten).
Ich fürchte aber, daß bei Klick auf "Zurück" der Timer wieder bei 0 anfängt. (Abhilfe: Cookie, bei neu laden aktualisieren).
Trotzdem wäre zumindest der Aktualisieren-Button ein deutlicher Hinweis, daß man nach "Zurück" auch noch auf "Aktualisieren" klicken muß, um seinen oder andere neue Beiträge angezeigt zu bekommen.
Zum Testen folgenden Code in eine leere *.htm-Datei einfügen.
Später im Forum hinter die Zeile mit dem Ladezeitpunkt einfügen.
(daher habe ich <html> usw. weggelassen, funktioniert in der leeren Datei aber auch ohne).
<!--
Statt
action=javascript:location.reload()
ist ein fester Link
action=http://forum.de.selfhtml.org
sicherer, geht dann auch ohne JavaScript
-->
Aktualisierungs-Knopf, Stand-Alone-Version:<BR>
<Form action=javascript:location.reload()>
<Input type=submit value="Forum aktualisieren" style=background-color:#00FF00>
</Form>
Aktualisierungs-Knopf, mit Aufenthaltsdauer:<BR>
<Form name="Aufenthaltsdauer" action=javascript:location.reload()>
<b>Aufenthaltsdauer:</b>
<!-- size für Netscape nicht unterschreiten! -->
<Input size=8 name="Stundendauer" readonly>
<Input type=submit value="Forum aktualisieren" style=background-color:#00FF00>
</Form>
<script language="JavaScript">
<!--
// Wenn im Head oder vor dem Formular: <body onLoad="ZeitAnzeigen()">
// Wenn Script NACH dem Formular:
ZeitAnzeigen() // nur wenn Script NACH dem Formular
// Global:
var Start = ( new Date() ).getTime()
function ZeitAnzeigen(){
var Jetzt = ( new Date() ).getTime()
var form = document.Aufenthaltsdauer
if(Start) // Wenn Script NACH Formular erscheint ist Start noch NaN bis Seite geladen
form.Stundendauer.value = ZeitString (Jetzt - Start, 1)
window.setTimeout('ZeitAnzeigen()',1000)
}
function ZeitString(Zeit, modus){
// modus: 0=mm:ss, 1=hh:mm:ss, 2=auto(m:ss oder h:mm:ss), 3=auto(mm:ss oder hh:mm:ss)
// (C) Frank Bergermann, http://www.bitwelt.de http://www.FrankBergermann.de
var gesamtSekunden = Math.floor(Zeit / 1000)
var Sekunden = gesamtSekunden % 60
var gesamtMinuten = (gesamtSekunden - Sekunden) / 60
var Minuten = modus > 0 ? gesamtMinuten % 60 : gesamtMinuten
var Stunden = (gesamtMinuten - Minuten) / 60
var Sekunden2 = (Sekunden > 9 ? "" : "0") + Sekunden
var Minuten2 = (Minuten > 9 ? "" : "0") + Minuten
var Stunden2 = (Stunden > 9 ? "" : "0") + Stunden
switch(modus){
case 0,1:
// 0=mm:ss, 1=hh:mm:ss
return (modus > 0 ? Stunden2 + ":" : "") + Minuten2 + ":" + Sekunden2
case 2:
// auto(m:ss oder h:mm:ss)
return (Stunden > 0 ? Stunden + ":" + Minuten2 : Minuten) + ":" + Sekunden2
default:
// auto(mm:ss oder hh:mm:ss)
return (Stunden > 0 ? Stunden2 + ":" : "") + Minuten2 + ":" + Sekunden2
}
}
//-->
</script>