Archivlink: javarea.de Forum > JavaScript > Genaue Aufenthaltsdauer zählen
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > Genaue Aufenthaltsdauer zählen
Pages: [1]
| geschrieben von snooky am 30.06.2007 - 17:01 |
Hallo,
ich suche ein Javascript, mit dem ich möglichst genau die Aufenthaltsdauer auf einer bestimmten Webseite
festhalten kann (z.B. in einem Cookie oder in einer Datenbank).
Die Genauigkeit sollte schon höher, als im Sekundenbereich liegen - also mindestends zehntel Sekunden.
Hat jemand eine gute Idee, wie ich das umsetzen könnte, oder vielleicht sogar ein fertiges Skript?
thx |
| geschrieben von Micha am 30.06.2007 - 18:53 |
Hi,
Du wirst es nichtmal auf Tagesgenauigkeit bringen können, das HTTP dafür nicht gedacht ist. Mit JS in einer DB schreiben wird ohne hin schwer. Wozu brauchst Du das denn? Vll gibts alternativen.
Micha |
| geschrieben von snooky am 30.06.2007 - 19:01 |
Ich brauch das für eine Studie.
Die Aufenthaltsdauer soll vom "Betreten" der Seite bis zum "Verlassen" (Aktivierung eines Links auf eine andere Seite) für einen einzelnen Benutzer festgehalten werden.
D.h. sobald der Benutzer die Seite betritt, läuft in Hintergrunt ein Zeitzähler, der die Zeit bis zum Verlassen stoppt und irgendwo abspeichert.
Mir würde es auch genügen, wenn Javascript die Zeit bis zu einer bestimmten Benutzereingabe, z.B. Drücken einer definierten Taste zählt.
Mir geht es dabei hauptsächlich um das messen der Zeit, die verstreicht, bis der Benutzer eine Aufgabe erledigt hat. Das Erledigen der Aufgabe auf der Seite quittiert er entweder, in dem er zur nächsten Seite geht oder halt irgend eine Taste drückt.
|
| geschrieben von Micha am 30.06.2007 - 19:47 |
Hi,
| HTML-Quelltext | 1:
| new Date().getTime() |
wirst Du am Anfang (betreten der Seite) und am Ende - wie auch immer Du das definierst - bestimmen müssen und beide Werte von einander abziehen. Das ist der Wert in msec, die der User verweilt hat. Ob er nachdem betreten Deiner Seite auf Klo war, er sie nur vorläufig in einem neuen Tab geöffnet hat ums sich später damit zu beschäftigen, wirst Du nie erfahren. Insofern ist Dein Vorhaben höchst fragwürdig.
Behilflich sein könnte der Event onunload(). Aber nur JS wird wie gesagt nicht reichen.
Micha |
| geschrieben von Klaush am 30.06.2007 - 23:43 |
Das wird auch so kaum umsetzbar sein. Was wenn ich den Browser schließe?.... du müsstest dann eine Endlosschleife oder aber besser noch mit Thread-Programmierung arbeiten, die erlaubt dir mehrere Anwendungen gleichzeit laufen zu lassen und sich gegenseitig abzufragen.
Der Aufwand ist also realtiv groß und macht wahrscheinlich kaum Sinn.
|
| geschrieben von Micha am 01.07.2007 - 00:49 |
Hi,
bietet JS Threads? Das schließen kann der Event onunload ermitteln. Ob man dann aber noch wirklich zeit hat, was zu übergeben - keine Ahnung. Aber ich denke auch, dass das ein eher Zeitverschwendung wird.
Micha |
| geschrieben von Klaush am 01.07.2007 - 12:27 |
Ob das JS kann weiß ich nicht, ich bezweifle es aber stark. Ich hatte soetwas mal in der OOP gebraucht und saß Monate daran eine Thread-Engine zu schreiben. Dort wurden dann die I/O Zustände für Roboter abgefragt. Die ZUstände mussten dann innerhalb des Threads geändert werden...... Eine heiden Arbeit die ich nicht wiederholen möchte .....
|
| geschrieben von Micha am 01.07.2007 - 16:07 |
<offTopic>
Hi,
schade, in Java habe ich das selbe Problem - also das ich nicht so recht weiß, wie es geht. Die zahllosen Beipsiele sind manchmal etwas tükisch (für einen Nicht-Informatiker) beim Übertragen auf das eigene Problem 
Da JS recht einfach ist, hätte man sich ja mgl.weise hier das nötige Grundwissen erarbeiten können. Egal, trotzdem Danke!
Micha
</offTopic>
|
|