Я работаю на сайте Drupal, где Colorbox используется для изображений, но он был добавлен вручную, а не через модуль.
Проблема возникает, когда Colorbox используется для фотогалереи, созданной с помощью Views, а обработка страниц выполняется с помощью AJAX.Первая страница работает нормально, но любые дополнительные страницы не запускают всплывающее окно Colorbox.
Мне кажется, что Colorbox не знает о новых элементах, потому что они не присутствовали в DOM при загрузке страницы.С этой мыслью я попытался привязать метод Colorbox $ .colorbox.init () к событию подкачки, но всегда возвращает ошибку:
"Undefined: $ .colorbox.init ()"
Вот то, что я добавил в модуль Views Drupal, чтобы проверить это после статуса «Успешно» из события подкачки (строка ajax_views.js: 132):
success: function(response) {
$.event.trigger('pagedContent');
Вот что я ловлю с этим:
$(document).bind('pagedContent', function() {
$.colorbox.init(); });
Я также попытался вместо этого просто запустить обычную инициализацию, но без результатов.
$(document).bind('pagedContent', function() {
$('myselector').colorbox(); });
Я уверен, что мне следует подойти к этому немного по-другому, чтобы следовать рекомендациям drupal, нопохоже, это должно работать, и мне интересно, почему это не так.Я тут не в курсе, неправильный подход?