Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.12.2019, 09:33
Интересующийся
Отправить личное сообщение для raja Посмотреть профиль Найти все сообщения от raja
 
Регистрация: 22.09.2016
Сообщений: 19

Какой универсальный способ фиксировать в БД факт покидания пользователем страницы?
если в конце функции возвращать false, то событие записывается в базу, но появляется алерт с просьбой подтвердить уход со страницы. без return false в базу ничего не записывается.
window.onbeforeunload = function (e) { 
            // Ловим событие для Interner Explorer 
            var e = e || window.event; 
            const request5 = new XMLHttpRequest();
            const url = "https://cors-anywhere.herokuapp.com/http://fixer.ru/cabinet/tracker/hit.php";
            user_href = encodeURI(document.location.href);
            browser = navigator.appName;
            browser_version = navigator.appVersion;
            const params = "user_id=" + UserId + '&href=' + user_href + '&browser=' + browser + '&browser_version=' + browser_version + '&type=exit';
 
            request5.responseType = "json";
            request5.open('POST', url, true);
            request5.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
             
            request5.addEventListener("readystatechange", () => {
             
                if (request5.readyState === 4 && request5.status === 200) {
                    let obj = request5.response;
                    console.log('ваш уход со страницы добавлен в базу: '+obj);  
                }
            });
            request5.send(params);
            return false;
        };

Но мне нужно делать это незаметно для пользователя безо всяких всплывающих окон. как это сделать?
Ответить с цитированием
  #2 (permalink)  
Старый 13.12.2019, 10:30
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,491

А всякие Google Analytics и Яндекс.Метрика, которые следят за поведением пользователя, вам не подходят?
Ответить с цитированием
  #3 (permalink)  
Старый 13.12.2019, 10:40
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,205

raja,
https://developer.mozilla.org/ru/doc...tor/sendBeacon
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Всплытие событий или что то не так... Кирюха =) jQuery 6 30.03.2013 10:56