Вероятно, есть некоторые различия как вы определили глобальный обработчик событий jQuery Ajax.Вы не опубликовали свой код.Я попробовал следующее
$(document).bind("ajaxError", function (e, jqXHR, ajaxSettings, thrownError) {
// log the event
});
$(document).bind("ajaxComplete", function (e, jqXHR) {
// log the event
});
с jQuery 1.7.1, и я вижу, что в случае ошибки тайм-аута всегда вызывались и ajaxError
, и ajaxComplete
.
Вы можете проверить этов простое демо , которое отображается в моих тестах либо

в случае успеха, либо

ошибка тайм-аута.