#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);} она срабатывает при закрытии браузера, и при закрытии вкладки с вашей страницей.
Комментариев нет:
Отправить комментарий