У меня есть следующая функция, которая выполняется, когда пользователь выходит из системы.Он содержит вызов ajax с функциями успеха и неудач внутри.Мой сайт использует виджет чата от zendesk, который предоставляет API для выполнения различных действий в окне чата.При успешном выходе из системы я выполняю функцию endChat()
, чтобы завершить текущий чат.В Chrome это прекрасно работает, и я могу отлаживать с помощью инструментов разработчика и наблюдать, как указатель выполнения нажимает $zopim.livechat.endChat();
Однако и в FireFox, и в IE пользователь выходит из системы еще до того, как эта строка попадет.Есть ли расхождения между тем, как эти браузеры обрабатывают вызовы ajax?
function logout(supressConfirmation, reason) {
var url = $("#LogoutStatus").data('url');
$.ajax({
url: url,
type: "Get",
data: {},
success: function (data) {
if (data.isUpdating && supressConfirmation != true) {
$("#logout-modal").modal('show');
}
else {
window.location.href = '@Html.Raw(Url.Action("Logout","Logout"))' + '?reason=' + reason;
}
zE(function () {
$zopim(function () {
$zopim.livechat.endChat();
});
});
},
error: function (failure) {
}
});
}