Seite neu laden bei Inaktivität
Markus Bauer
- html
Hallo!
Ich habe zu unsrem Forum eine neue "Shoutbox" dazu gebaut, die jetzt nicht mehr direkt auf der Site ist, sondern als iframe eingebunden ist.
Funktioniert alles ganz nett.
Nur wäre es noch sehr schön, wenn sich der iframe automatisch neu laden würde, dass, wenn man z.B. ein längeres Posting im Forum schreibt, bez. der Shoutbox "am neusten Stand" ist.
Das Problem ist aber, dass der Reload nur gehen soll, wenn der iframe "inaktiv" ist, d.h. wenn der Benutzer weder gerade eine Nachricht (ins Eingabefeld) schreibt, oder abschickt oder auch etwas hinuntergescrollt ist, um ältere Einträge zu lesen.
Ein einfaches refresh mit meta fällt aus, ich habe mich auch schon etwas mit event-handlern auf <body> gespielt, damit die Seite nur dann neu geladen wird, wenn der User auch im iframe ist, das funktioniert aber alles nicht so ganz.
Wie könnte ich das am besten realisieren?
Markus
PS: Oder ist ein Reload "von aussen" besser? Nur wie wird dann entschieden, wann ein Reload gemacht werden soll?
hi
du fängst jede tastatureingabe ab und setzt damit einen timer zurück der beim betreten der seite geladen wird.
wenn der timer eine bestimmt zeit erreicht hat, wird eine function aufgerufen die deinen iframe neu läd.
das ganze sollte ohne große probleme mit javascript zu realisieren sein.
so long
ole
(8-)>
Hallo,
hmm also runterscrollen geht schlecht, aber das mit der Eingabe geht.
Nr 1:
Du lässt einen JavaScript Zähler von xxx runterzählen und bei 0 gibt es einen JavaScript refresch, oder:
Nr 2:
Du packst unter den iFrame einen 2. iFrame wo nur das Eingabefeld ist, dort schreibt er seine Nachricht ein.
Das Formular sendet dann den Inhalt an den oberen iFrame, das sollte per target funktionieren.
So kann er runterscrollen und dennoch eine Nachricht schreiben.
Aber ob ein User gerade scrollt kann man nicht feststellen
MFG
Andavos