Drupal → Как открыть в Lightbox картинки, которые были добавлены на страницу с помощью AJAX
Чтобы контент, который был добавлен с помощью AJAX, открывался в Lightbox-e, нужно после вставки его (контента) в DOM вызвать функцию Drupal.attachBehaviors([context])
. Например:
Drupal.behaviors.mymodule = function(context) { $('#ajax-link', context).click(function () { $.get(Drupal.settings.basePath + 'some/path', function(response) { $('#target').html(response); // вставляем контент Drupal.attachBehaviors('#target'); // оповещаем другие модули }); }); }
Drupal по адресу some/path
должен отдать что-нибудь в духе:
<a href="/sites/default/files/01.jpg" rel="lightbox"><img src="/sites/default/files/01-thumb.jpg" /></a> <a href="/sites/default/files/02.jpg" rel="lightbox"><img src="/sites/default/files/02-thumb.jpg" /></a>
По хорошему, Drupal.attachBehaviors([context]);
надо вызывать при любом изменении контента, чтобы другие модули могли реагировать на это событие.
Комментарии
Здравствуйте!
Пытаюсь обработать AHAH-чекбокс в окне модуля Lightbox2 (данная форма работает и возвращает нужные данные в формате json без лайтбокса).
В окне же, после отметки галочкой, никаких действий не происходит (стандартный прелоадер также не появляется).
Предложенное здесь относится к решению этой проблемы?
В js я не очень понимаю.
нет
Оставить комментарий