Нужен плагин jQuery Lightbox, который поддерживает $ .live () и группировку - PullRequest
3 голосов
/ 25 мая 2009

Я добавляю все свои изображения через Ajax и ищу быстрое решение для внешнего интерфейса этого проекта. Я пробовал пару плагинов лайтбокса jQuery, но я не могу заставить их работать в режиме реального времени (поправьте меня, если я ошибаюсь, думая, что мне нужно это сделать).

В настоящее время пытаюсь использовать плагин Balupton для лайтбоксов (не могу связать из-за того, что я новый пользователь), и после попытки всех примеров безрезультатно, я попробовал это с этим (также не работает):

$('a.lightbox-gallery').live('click', function(){
    $(this).lightbox();
});

Любая помощь очень ценится!

Ответы [ 3 ]

5 голосов
/ 26 мая 2009

1) вы можете взломать плагин лайтбокса для привязки к живым событиям 2) Вы можете вызвать лайтбокс после завершения ajax, только для новых элементов:

$.ajax({
    type: "POST",
    url: "url.php",
    cache: false,
    success: function(data){
        $(data).find('a[rel=lightbox]').lightbox(settings).end().appendTo('#ajaxTarget');
    }
}); 

Для settings вы можете использовать массив, чтобы избежать записи одного и того же дважды;)

4 голосов
/ 07 апреля 2010

Вы можете использовать живую функцию colorbox и jquery, как это

$('a[rel=gallery]').live('click', function() {
  url = this.href; // this is the url of the element event is triggered from
  $.colorbox({href: url});
  return false;
});
0 голосов
/ 18 апреля 2012

Вы также можете посмотреть на плагин livequery jquery не так уж и плохо;) http://docs.jquery.com/Plugins/livequery Вы можете встроить этот плагин в свой файл jquery и использовать его как простую функцию jquery:

$('.ajax-loaded-element').livequery('click',function(){

//do somenthing

});
...