var startTime = new Date();
window.onunload = function() {
var time = new Date() - startTime;
time = Math.round(time / 1000);
SendPost(time); //отправляем на сервер
}
Код который высчитывает время от загрузки скрипта, до закрытия страницы. Работает в Опере, не работает в Хроме и Фоксе(вероятно из-за window.onunload). Как получить данные о времени от загрузки страницы до ее закрытия(отсоединения от интернета, отключения JS, ...), для получения представления о среднем времени пребывания на странице?
Вроде делают с помощью WebSocket. Как это осуществить?
var ws = new WebSocket('ws://echo.websocket.org');
var startTime = new Date();
ws.onclose = function() {
var time = new Date() - startTime;
time = Math.round(time / 1000);
SendPost(time); //отправляем на сервер
}
Такой вариант не заработал. Дело в том, что Эхо-сервер сразу же закрывает соединение, или в том, что onclose не срабатывает, если закрыть страницу?
Простой вариант с отсылкой сообщений серверу с идентификатором пользователя и временем от начала сессии, через каждые n секунд реализовать всегда успею...
Сборка персонального компьютера от Artline: умный выбор для современных пользователей