Я использовал $ (window) .bind ("beforeunload", function (e) {}), чтобы вызвать ajax до закрытия браузера. Он работает нормально, когда я тестирую свой локальный хост. Ajax-вызов выполняется отлично для обновления страницы и закрытия браузера. Но, когда я загружаю это на онлайн-сервер, кажется, он работает только для обновления страницы, ничего не делает для закрытия браузера, хотя для вызова мне нужен ajax для браузера. вот мой код:Ajax вызов до закрытия или перенаправления страницы с использованием beforeunload()
//before close/reload browser
$(window).bind("beforeunload", function(e) {
$.ajax({
type:"POST",
url: "chat_online.php",
data:{ job: 'agent_on_off', id:to_id },
success: function(t){
},
});
});
Поскольку на локальном хосте у вас нет большой латентности, с сервером вам нужно указать, чтобы ждать ответа, потому что требуется время (несколько мс, но все еще слишком много времени для задачи async). (Просто для объяснения немного больше;)) – AxelH
@AxelH, спасибо за ваш описательный комментарий. –