Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Отображение loader-а для заданой функции (https://javascript.ru/forum/events/47172-otobrazhenie-loader-dlya-zadanojj-funkcii.html)

fligapter 12.05.2014 13:17

Отображение loader-а для заданой функции
 
Добрый день!

Есть функция с jquery запросом, время выполнения запроса занимается анимированной gif чтобы юзер не заскучал. Но теперь добавилась другая функция с jquery запросом, которая должна работать в фоне (т.е. юзер не должен видеть анимации во время её выполнения) Как сортирнуть? на одну ф-ю показывать лоадер, на другую нет?

отображается лоадер вот так:
$(document).ajaxStart(function () { $('#loader').show(); }).ajaxStop(function () {$('#loader').hide();});

krasovsky 12.05.2014 14:40

У меня для этого небольшой модуль написан - упрощенно принцип такой:
1 есть функция set(),которая выкатывает оверлей с гифкой на весь экран и close, которая имеет противоположное действие.
2 В window есть namespace в котором я храню состояния, то бишь set устанавливает его в active,close в inactive
3 На ajaxStart и ajaxStop запускаю set и close соответственно.
А так же в ajaxStart есть условие - если состояние в ns == 'hide', то set не запускается, а состояние переключается в active, чтоб не мешать другим функциям использующим прелоадер

и того если я знаю что будет запрос, но не хочу видеть прелоадер то перед запросом ставлю window.ns.state = 'hide';

fligapter 12.05.2014 15:28

Благодарю Вас, krasovsky!


Часовой пояс GMT +3, время: 23:45.