Страницы

Поиск по вопросам

вторник, 25 февраля 2020 г.

Удаление куки при выходе с сайта

#jquery #cookie


Добрый день, нужно удалить куку при выходе с сайта
jQuery(window).unload(function(){ 
  jQuery.cookie('enter', null); 
});

Такое решение удаляет куку каждый раз при переходе на другую внутреннюю страницу
сайта, как можно решить данную проблему?    


Ответы

Ответ 1



Еще одна практика отслеживания присутствия пользователя на сайте — ставить куки на маленький промежуток времени и постоянно их обновлять. Например, приведенная ниже функция ежесекундно устанавливает куку с длительностью хранения в две секунды. После закрытия вкладки кука про100 исчезнет. var date = new Date(); function track_user() { setInterval(function() { date.setTime(date.getTime()+(2*1000)); document.cookie = "enter=1; expires="+ date.toGMTString() + "; path=/"; }, 1000); } track_user(); Маленькие нюансы: Если в браузере пользователя будет открыто много вкладок со страницами сайта, где вызывается данная функция, то кука не исчезнет пока не будут закрыты все вкладки. Регулируя скорость обновления и продолжительности жизни куки можно избежать проблем потери куки при обновлении страницы. Время жизни куки должно быть больше (не меньше или равным, а именно больше) частоты обновления куки.

Ответ 2



Вам нужно использовать window.onbeforeunload = function(){jQuery.cookie('enter', null);} она срабатывает при закрытии браузера, и при закрытии вкладки с вашей страницей.

Комментариев нет:

Отправить комментарий