Создание индикатора загрузки ресурсов в JQuery с использованием GIF-анимации и плагина jAni.
Для создания индикатора загрузки в качестве первого шага создадим GIF-анимашку загрузки, воспользовавшись сервисом http://ajaxload.info/.
Далее в HTML-страницу добавим блок:
<div id="dialog_wait">
<img alt="" src="/img/ajax-loader.gif">
</div>
С CSS-стилем:
#dialog_wait{
display:none;
}
В JQuery-коде при старте долгого процесса укажем:
var dialog=$('#dialog_wait');
dialog.show();
А при его успешном завершении:
var dialog=$('#dialog_wait');
dialog.hide();
Так как при отображении GIF-анимации в браузерах могут возникнуть проблемы, связанные с кэшированием и настройками браузера, для создания индикатора загрузки можно воспользоваться плагином jAni http://www.ajaxblender.com/jani.html.
Для использования плагина jAni откроем GIF-анимашку в программе Ulead GIF Animator и сохраним ее как кадры изображения.
Откроем программу Photoscape и выберем Комбинация.
Кнопкой Добавить создадим вертикальную последовательность кадров.
И кнопкой Сохранить сохраним ее.
Далее в HTML-страницу добавим блок:
<script src="/scripts/jani.js" type="text/javascript"></script>
<div id="dialog_wait">
</div>
С CSS-стилем:
#dialog_wait{
display:none;
background: url(../scripts/wait.png) no-repeat left top;
}
Где wait.png – изображение, созданное в Photoscape.
В JQuery-коде при старте долгого процесса укажем:
var dialog=$('#dialog_wait');
dialog.show();
dialog.jani({
frameWidth: 220,
frameHeight: 20,
speed: 100,
totalFrames: 10
});
dialog.jani.play();
А при его успешном завершении:
var dialog=$('#dialog_wait');
dialog.jani.stop();
dialog.hide();
Фон индикатора загрузки можно сделать прозрачным, открыв изображение wait.png в онлайн-редакторе Pixlr http://pixlr.com/editor/.
В редакторе Pixlr разблокируем задний фон изображения.
Далее волшебной палочкой выделим задний фон.
И в меню Редактировать выберем опцию Вырезать, после чего сохраним изображение в формате PNG.