So bestimmen Sie die Zeit vor Ort in Javascript?

8

Google Analytics erfasst "Zeit vor Ort". Wie würdest du das effektiv machen? Verfolgt es tatsächlich, wenn der Benutzer den Browser schließt oder weg navigiert?

Gedanken?

    
Max Schmeling 26.02.2009, 18:46
quelle

5 Antworten

4

Ich kann natürlich nicht 100% sicher sein, aber ich schätze, dass sie JavaScript und die onload- und onunload-Ereignisse und / oder setTimer verwenden, um über AJAX mit einem Webdienst zu kommunizieren. Auf diese Weise können sie herausfinden, wann Benutzer eine Seite auf Ihrer Website aufrufen oder verlassen. Sobald der Browser den Webdienst nicht mehr anpingt, wird angenommen, dass er Ihre Website verlassen hat.

Ich bin mir sicher, dass es einen gewissen Fehlerspielraum gibt, egal wie du es machst, aber du könntest eine ziemlich anständige Schätzung auf diese Weise bekommen.

    
Eric Petroelje 26.02.2009, 19:03
quelle
3

Es gibt ein JavaScript-Ereignis namens onBeforeUnload , das ausgeführt wird, wenn ein Benutzer eine Seite verlässt. Dies kann das Schließen der Fenster / Tabs oder das Navigieren zu einer anderen Seite sein (auch wenn es sich auf derselben Site befindet). Indem Sie die Zeit unmittelbar nach dem Laden der Seite abrufen und JavaScript verwenden, um eine synchrone Anforderung onBeforeUnload mit der Zeitdifferenz zwischen Laden und Verlassen zu senden, können Sie die auf einer Seite verbrachte Zeit effektiv verfolgen. Ich würde annehmen, dass Google das tut.

Wenn Sie Code Beispiele und ein wenig mehr Informationen arbeiten möchten, überprüfen dies raus.

    
Beau 24.11.2009 17:48
quelle
3

Stellen Sie einfach eine Funktion wie folgt ein:

%Vor%

In Javascript erhalten Sie so eine Zeichenfolge, die sagt HH: MM: SS, oder H: M: S, wenn die Stunde / Minute / Sekunde weniger als 2 Zeichen lang ist

Also mach ein bisschen Mathe um ihn herum

Stellen Sie das einfach irgendwo in Ihrem Fenster ein und verbinden Sie es mit der Sitzung (dies wird auf allen Seiten garantiert), Sie erhalten genau die Zeit, die ein Benutzer auf Ihrer Seite verbracht hat.

Edit: musste eine Funktion entfernen, die ich dort hatte, die meine war, und es ist nicht von Javascript sry: p

    
fmsf 26.02.2009 19:04
quelle
2

Ich denke nicht, dass es verfolgt, wenn Sie den Browser schließen oder weg navigieren, und selbst wenn dies der Fall ist, funktioniert das nicht in 100% der Fälle.

Ich schätze, dass sie den Aufenthalt auf der Ausgangsseite schätzen, vielleicht basierend auf den vorherigen Seiten oder einem Durchschnitt für diese Seite für alle Besucher. Wenn Sie in ein paar Minuten drei Seitentreffer erhalten, haben Sie eine genaue Anzeigezeit für die ersten beiden Seiten, aber Sie wissen nie, wie lange die dritte Seite angezeigt wird. Vielleicht schließen Sie die Seite sofort, oder lassen Sie sie offen und lesen Sie sie später.

Es sind Statistiken, also ist es auf lange Sicht normalerweise ziemlich genau, aber es ist nie wirklich die Wahrheit. ;)

    
Guffa 26.02.2009 19:03
quelle
1

Ich vermute, dass sie wahrscheinlich einen Timer ausführen, der eine Art Callback für jede Schleife wiederholt und ausführt, wobei ein Cookie verwendet wird, um den Benutzer und die Sitzung zu identifizieren

    
nduplessis 26.02.2009 19:02
quelle

Tags und Links