Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите с JQUERY не появляется лоадер
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » Помогите с JQUERY не появляется лоадер

Страниц (1): [1]
 

1. 3d_killer - 14 Сентября, 2013 - 20:52:16 - перейти к сообщению
Не пойму как решить проблему, при каких либо действиях срабатывает функция:
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. function loader()
  3. {
  4.     $('#loader').css('display','block');       
  5. }
  6.  

но визуально окно не появляется Огорчение работает только в FIREFOX, с ксс все в порядке проверено через Firebug
может проблема в том что скрипты подключатся без директивы:
CODE (javascript):
скопировать код в буфер обмена
  1. $(document).ready(function()

но если прописать это везде то функции становятся невидимыми между собой, куда копать не знаю, такое чувство что JAVA не отрабатывает или не успевает отработать за выполнение операций хотя некоторые операции на хосте проходят за 2-3 секунды, помогите кто чем может
2. LIME - 14 Сентября, 2013 - 21:40:52 - перейти к сообщению
а зачем везде?
оберни в нее весь жс код
3. 3d_killer - 14 Сентября, 2013 - 21:45:01 - перейти к сообщению
ну некоторый код подгружается, не работает даже так...
:
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. $(document).ready(function()
  3.         {      
  4.           //ОБРАБОТКА НАЖАТИЙ НА МЕНЮ
  5.           //Главное меню
  6.                 $('.menu_top').click(function()
  7.                         {
  8.                                 crack();
  9.                                 window.id_menu=$(this).data('id');
  10.                                 window.selected_country=null;
  11.                                 switch(window.id_menu) 
  12.                                         {
  13.                                                 case 1:{$('#loader').css('display','block'); form_menu(); load_menu(); menu(); check_menu(); $('#loader').css('display','none');} break;
  14.  

если после этого
CODE (javascript):
скопировать код в буфер обмена
  1. $('#loader').css('display','block');
сделать алерт, то появляется ну естественно висит пока не нажмешь на алерте...
4. IllusionMH - 14 Сентября, 2013 - 21:54:46 - перейти к сообщению
3d_killer, сколько из вызываемых функций содержат синхронные, а сколько асинхронные запросы?
Если нужно ждать завершения асинхронного запроса, то нужно скрывать элемент в колбэке
5. 3d_killer - 14 Сентября, 2013 - 21:58:11 - перейти к сообщению
все функции после нужного вывода LOADER
не появляется это:
PHP:
скопировать код в буфер обмена
  1. $('#loader').css('display','block');
, только в FireFox появляется, по отладчику смотрю в процессе действия css в Chrome не меняется не пойму
6. LIME - 14 Сентября, 2013 - 22:09:27 - перейти к сообщению
перенеси всё скрипты в самый низ
7. 3d_killer - 14 Сентября, 2013 - 22:15:20 - перейти к сообщению
не помогает Огорчение
(Добавление)
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2.                 function loader()
  3.                         {
  4.                                 $('#loader').removeClass('loader_off');
  5.                                 $('#loader').addClass('loader_on');    
  6.                         }
  7.                 function close_loader()
  8.                         {
  9.                                 $('#loader').addClass('loader_off');
  10.                                 $('#loader').removeClass('loader_on'); 
  11.                         }
  12.  

Так в отладчике при запросах класс меняется но визуально не видно этого
8. tuareg - 15 Сентября, 2013 - 11:35:49 - перейти к сообщению
А с чего это вообще должно работать?
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. {$('#loader').css('display','block'); form_menu(); load_menu(); menu(); check_menu(); $('#loader').css('display','none');}
  3.  

Смотрите, $.Deferred()
9. 3d_killer - 15 Сентября, 2013 - 11:43:53 - перейти к сообщению
не понял
все работает в файрфоксе в других браузерах визуально не появляется но ксс меняется, $.Deferred() это что имеется в виду?
10. tuareg - 15 Сентября, 2013 - 11:46:20 - перейти к сообщению
Давайте, начнем поэтапно Улыбка
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. {$('#loader').css('display','block'); form_menu(); load_menu(); menu(); check_menu();}
  3.  

Так что получится? лоадер появится?
В плане сработает $('#loader').css('display','block');?
11. 3d_killer - 15 Сентября, 2013 - 12:00:34 - перейти к сообщению
да
(Добавление)
вот можно посмотреть на видео что класс меняется и есть задержка при его исчезновении:
http://www[dot]ruservic[dot]ru/Doc/Computer/
вначале хром около середины файрфокс

 

Powered by ExBB FM 1.0 RC1