В хроме (17-beta, 16-stable) onload-триггер срабатывает до того, как загружены изображения.
Если из этого триггера вызывается ajax-зарос и хочется показывать юзеру индикатор загрузки с анимированной gif-крутилкой — он его не увидит, потомучто на момент отсыла запроса gif ещё не загружен.
Всё равно не вижу проблемы. Отображайте ваш индикатор сразу, ведь работать он должен сразу.
А то у Вас как-то не логично: «загружаем основную страницу->отображаем индикатор загрузки->продолжаем загрузку->прячем индикатор загрузки»
Проще: «загружаем основную страницы с видимым индикатором->продолжаем загрузку->прячем индикатор»
У меня:
загружаем основную страницу -> включаем индикатор -> инициируем запрос на сервер, инициируем ещё один запрос на сервер, инициируем запрос на другой сервер -> выключаем индикатор, когда все запросы отработали.
Он и должен срабатывать до загрузки изображений. Хром тут ни при чем, кстати.
Для изображений есть imagesLoaded ( github.com/desandro/imagesloaded ) из-под masonry.