jQuery FancyBox поздняя загрузка AJAX - PullRequest
0 голосов
/ 03 февраля 2011

В моем приложении на элементе fancybox нажмите Я загружаю HTML-страницу.Но на этой удаленной странице у меня также есть некоторая логика JavaScript, которая использует AJAX (я знаю, это странно) для загрузки некоторых данных при загрузке страницы.Прямо сейчас я не хочу показывать диалоговое окно fancybox или просто показывать анимацию загрузки, пока данные на удаленной странице не будут полностью загружены.Есть ли способ сделать это?

То, что у меня пока есть, действительно ужасно - я загружаю пустую страницу, которая отображается в диалоговом окне fancybox, и через несколько секунд содержимое этой страницы загружается.И из-за этого у меня проблемы с размерами и центрированием.

Ответы [ 3 ]

0 голосов
/ 04 февраля 2011

Попробуйте перезвонить так:

$('a.magical').fancybox({ 'callBackOnShow': function() { $('#fancybox-wrap').hide(); $.fancybox.showActivity(); } });

замените a.magical вашим идентификатором / классом привязки и добавьте в него свои конфигурации fancybox.

0 голосов
/ 05 февраля 2011

Хорошо, вот как это будет работать: [ИСПОЛЬЗУЯ ПОЛЬЗОВАТЕЛЬСКИЙ AJAX] сначала выполняет пользовательский вызов jquery ajax, за которым следует $ .fancybox.showActivity (), при нажатии на кнопку для получения fancybox для полученияпромежуточная страница.когда с промежуточной страницы выполняется вызов ajax, заполните данные в скрытом div и сделайте вызов сиквела для встроенного (в отличие от ajax) вызова открытия fancybox (используйте скрытый / пустой якорь только для запуска fancybox).открыть действие и затем вызвать $ ('# hidden_a'). click ()).Предварительный загрузчик будет закрыт, как только отобразится окно «fancybox».

0 голосов
/ 04 февраля 2011

$.fancybox.showActivity() и $.fancybox.hideActivity() ваши друзья.Позвоните им последовательно согласно вашему требованию.Например, вы можете вызвать $ .fancybox.showActivity () в качестве обратного вызова к вашему вызову ajax (когда отображается начальное окно), чтобы вновь появился предварительный загрузчик / анимация и вызвать $ .fancybox.hideActivity (), когда фактическая требуемая страница /данные извлекаются из более позднего вызова ajax, чтобы анимация исчезла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...