Я пытаюсь написать очень простую функцию, которая отображает элемент div с надписью «Загрузка ...», затем выполняет вызов jQuery ajax () и после завершения скрывает загрузочный элемент div.Код прекрасно работает в Firefox, но IE 7 (возможно, 8/9, также протестирован только на 7) и Chrome имеют проблемы:
function ajaxwl(url) {
$('#loadingDiv').show();
var xmlHttp=$.ajax({type: "GET",
url: url,
async: false });
$('#loadingDiv').hide();
return xmlHttp;
}
Я прошел по коду с помощью отладчика Chrome, а затемэто сработало - загрузка загрузки была отображена как ожидалось.Однако, если я запускаю код без отладчика, Chrome (и IE 7) загружает запрос AJAX, даже не показывая загрузочный div.Возможно, это как-то связано с тем, что Chrome блокирует браузер, так как я использую не асинхронный запрос?
РЕДАКТИРОВАТЬ: я закончил преобразование запроса в асинхронный запрос (преобразование, которое необходимочтобы быть повсюду в этом коде я унаследовал, но я откладывал ...) и теперь все работает, как ожидалось:
function ajaxwl(url) {
$('#loadingDiv').show();
var xmlHttp=$.ajax({type: "GET",
url: url
}).done(function() {
$('#loadingDiv').hide();
});
return xmlHttp;
}
Спасибо за быстрые ответы!