Таблица jQuery AJAX для страницы, но теперь оверлеи для цветных ящиков больше не работают

Я использую AJAX для динамического обновления страницы с помощью таблицы данных.

Когда таблица успешно добавлена ​​на страницу, она содержит некоторую ссылку на код для создания всплывающих всплывающих окон colorbox.

Однако после того, как таблица была вытащена на страницу, эти наложения больше не работают.

Любые идеи? Я предполагаю, что их нужно переинициализировать или что-то еще?

3 ответа

Я столкнулся с подобной проблемой. Я не уверен, понял ли я на 100% решение, но я в основном получил его так:

$.get('/ajax.php?action=roomList&restriction='+limit, function(data) {
 $('#roomList').html(data).fadeIn();
 $('.cb').colorbox({maxWidth:500,maxHeight:700});
 });

В моих ссылках у меня есть класс = cb, чтобы подключиться к colorbox. MaxWidth и maxHeight есть, потому что по firefox новый colorbox, который появился, был ОГРОМНЫМ по какой-то причине...

Если у кого-то есть более элегантное решение, пожалуйста, дайте мне знать. Я помню, когда я использовал толстый бокс, был аналогичный процесс для загруженного содержимого ajax, поскольку новый материал не был вокруг, когда загружалась исходная страница.


Без какого-либо кода это немного сложно, чтобы дать солидный ответ, но привязка вашей функции colorbox с помощью .live() звучит так, как будто это решит проблему.

http://api.jquery.com/live/

Прикрепите обработчик к событию для всех элементы, соответствующие текущим селектор, теперь или в будущем.

Это или вы должны подождать, пока ваш вызов ajax не будет успешным, поэтому этот элемент существует, а затем привязывает вашу функцию цветового поля;

$('.link').ajaxSuccess(function() {
 $('a.gallery').colorbox();
});

http://api.jquery.com/jQuery.ajax/

http://api.jquery.com/ajaxSuccess/


Я написал функцию на главной странице, откуда был сделан запрос Ajax, и вызвал эту функцию в атрибуте click ссылки, где я хочу позвонить:

Функция ImgClick (imgid) {

$('body #txtHint').find('a.'+imgid).colorbox({rel:imgid });

}

licensed under cc by-sa 3.0 with attribution.