Вы говорите, что индикатор загрузки не отображается и в Google Chrome (для настольных ПК), или просто в мобильном браузере Google Chrome Lite для устройств Android? Если вы используете последнюю версию jQuery, она должна работать во всех браузерах. Мобильные браузеры не очень хорошо поддерживаются из-за их резко отличающегося дизайна интерфейса, и, не будучи полноценными браузерами, многие не имеют полностью функциональной поддержки JS.
Тем не менее, я не слышал о каких-либо проблемах с jQuery в Chrome Lite - одна из самых впечатляющих особенностей платформы Android - включение полнофункционального браузера на мобильной платформе. Но я думаю, что мобильная версия jQuery либо доступна, либо находится в разработке. Так что, если ничего не помогает, вы можете попробовать это.
Краткое описание поддержки JavaScript / jQuery в мобильных браузерах см. В этом посте групп Google:
http://groups.google.com/group/jquery-dev/msg/262fa7d9f3cbe96e
Edit:
Хотя пользовательский интерфейс Chrome блокируется, когда вы выполняете синхронный запрос, я смог обойти это, просто поместив небольшую задержку между показом индикатора загрузки и выполнением XHR:
function callAjax() {
showIndicatorDialog();
setTimeout("testAjax()",100);
}
function testAjax() {
foo = $.ajax({
url: "index4.htm",
global: false,
type: "POST",
data: {
id: 3
},
dataType: "html",
async:false,
success: function(msg){
$('#response').text(msg);
},
complete: hideIndicatorDialog
}).responseText;
}
Я использовал запрос POST, чтобы браузер не кэшировал ответ, но он должен одинаково хорошо работать с запросами get. У меня нет телефона Android для тестирования, но он отлично работает в Google Chrome.