Я хочу уведомить сервер о том, что пользователь закрывает окно браузера.
Я перепробовал все
$(window).bind("beforeunload", function() {
$.get("${contextPath}/notify?direction=logout");
});
и
$(window).unload( function() {
$.get("${contextPath}/notify?direction=logout");
});
и
$(window).unload(function() {
$.ajax({
url: "${contextPath}/notify?direction=logout"
});
});
, но ни тот, ни другой не работают, несмотря на то, что в руководстве сказано, что это, вероятно, должно.
В Firefox у меня нет уведомлений только о закрытии окна, но есть уведомления об обновлении страницы.В Chrome у меня нет ни одного.
Я попытался отследить этот скрипт в Firebug или Chrome Developer Tools и обнаружил, что он начинает работать, если его отследить!Поэтому я думаю, что он не работает нормально, потому что у него нет времени на отправку запроса до закрытия окна или навигации.
Это правда?Как выполнить мою задачу?
РЕШЕНИЕ
Это сработало:
$(window).bind("beforeunload",
function() {
$.ajax({
async: false,
url: 'notify'
});
}
);