Frank Bergermann: Reload-Button / Aufenthaltsdauer

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>

  1. Hallo,

    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).

    Wozu denn bitte?
    "Aktualisieren" habe zumindest ich in all meinen Browsern drin (und sogar besser erreichbar als irgendwo auf der Seite).
    Die Aufenthaltsdauer ist doch ziemlich egal, gibt hier ja keine "Wer ist am längsten da?"-Meisterschaft. UNd wen's doch interessiert, der kann sich das ganze aus dem Ladezeitpunkt errechnen.

    Wozu also der ganze Schnickschnack?

    Ich finde ein funktionales Forum bei dem der _Inhalt_ im Vordergrund steht besser als eines, das sich hinter all seinen Features verstecken muß.

    Grüße aus Würzburg
    Julian

    1. Hallo,

      Wozu denn bitte?

      Damit man nach "Zurück" DEUTLICH sieht, daß die Seite nicht mehr aktuell ist und besser neu geladen werden muß.

      Einen onBack-Eventhandler gibt es ja nicht.

      der ganze Schnickschnack

      Der Code für den Reload-Button ist kurz und knapp:
      (statt javascript:... kann man auch einen direkten Link angeben)

      <Form action=javascript:location.reload()>
        <Input type=submit value="Forum aktualisieren" style=background-color:#00FF00>
      </Form>

  2. hi!

    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).

    Abgelehnt. Jetzt wiederholen sich nicht nur die ganzen alten
    "Verbesserungsvorschläge", jetzt kommen auch noch neue sinnlose
    Ideen dazu... :/

    bye, Frank!