Пример использования Navigation Timing API

Данный API позволяет веб приложению собрать данные о работе на стороне клиента — редирект, наступление какого-то события, активность DOM. Более подробные сведения ищите тут Navigation Timing API Overview

Я приведу скрипт, который собирает и отсылает данные (если используете CMS, просто вставьте в конец футера, чтоб <script>…</script> оказалось в самом конце):

(function() {
    var URL = 'http://your.domain/string_receiver.php?loadtime=';

    function calcLoadTime(){
        setTimeout(function(){
            var t = performance.timing,
                el = document.createElement("iframe"),
                time = t.loadEventEnd - t.responseEnd;

            el.id = 'iframe';
            el.style.display = "none";
            el.src = URL + time;
            document.body.appendChild(el);

        }, 0);
    }

    if (window.addEventListener) {
      window.addEventListener('load', calcLoadTime, false);
    }
    else if (window.attachEvent) {
      window.attachEvent('onload', calcLoadTime );
    }
})()

Не забудьте поставить правильную ссылку на сервер, где вы принимаете данные.

Принимающая сторона (предполагается размещение этого PHP скрипта на сервере):

$received_string = $_GET["loadtime"]; 
// ваши действия по сохранению данных в БД


You can leave a response, or trackback from your own site.

Leave a Reply