Лайтбокс: как разобрать в лайтбоксе динамически загружаемый HTML-контент (AJAX) - PullRequest
1 голос
/ 16 мая 2010

Я использую (модальный) лайтбокс на странице моего сайта для отображения моих узлов.

Я использую некоторые плагины, такие как внешний плагин jquery для всплывающих подсказок и плагин drupal jQuery Media (для загрузки флеш-видео плеера для некоторых полей видеофайлов).

Эти плагины загружаются при загрузке главной страницы и анализируют html-содержимое страницы.

Когда я динамически загружаю лайтбокс (и использую AJAX для обновления его содержимого), HTML-код внутри лайтбокса не анализируется ... так что никаких подсказок и видео нет.

как я могу решить это? Должен ли я снова запустить плагины из функции обратного вызова Lightbox? Или я должен использовать что-то другое вместо лайтбокса?

Спасибо

1 Ответ

1 голос
/ 17 мая 2010

Эти плагины загружаются при основной загрузка страницы, и они анализируют HTML содержание страницы

Если эти плагины реализованы как Drupal.Behaviors (как следует, вместо того, чтобы просто запускать .ready() или .onload()), вам просто нужно вызвать Drupal.attachBehaviors(yourAjaxResponseContent) для динамически загружаемого контента. См. http://drupal.org/node/205296 и http://drupal.org/node/114774#javascript-behaviors для некоторых деталей об этом механизме.

Если плагины не используют маршрут Drupal.behavior, вам нужно либо изменить их, чтобы сделать это (рекомендуется), либо вручную запустить их для обработки нового контента самостоятельно.

...