Некоторые библиотеки JavaScript позволяют прослушивать запросы открытия и закрытия. Проверить прототип запроса Ответчик http://www.prototypejs.org/api/ajax/responders.
Вы бы сделали что-то вроде этого:
Ajax.Responders.register({
onCreate: function() {
$('loader').show();
Ajax.activeRequestCount++;
},
onComplete: function() {
Ajax.activeRequestCount--;
if (Ajax.activeRequestCount < 1) $('loader').hide();
}
});
Что касается визуального представления загрузки, вы можете определить различные части вашей страницы, для которых может потребоваться отдельная графика загрузки и создать подкласс объекта Request, каждый раз указывая тип запроса.
Например.
Это поле сохраняется? new FieldUpdateRequest(field)
Это страница загружается? new Request();
Контейнер обновляется? new PartialRequest(div);
Затем запишите каждый тип подклассов и покажите или спрячьте различную графику загрузчика.
К сожалению, нет быстрого решения, хэл. Вы можете создать общий сценарий для добавления графики загрузчика в контейнеры, что должно сэкономить вам некоторое повторение. Если вы это сделаете, не забудьте опубликовать это здесь:)?