Использование лайтбокса и события клика - PullRequest
1 голос
/ 16 июля 2010

Я использую лайтбокс для просмотра изображений, и мне просто нужно использовать rel="lightbox" внутри <a>. Проблема в том, что на моем сайте есть AJAX для каждой ссылки, поэтому я кодировал

$('a').live('click', function() {
    $('#content').load($(this).attr('href'));
    return false;
});

Таким образом, каждая ссылка становится запросом AJAX. Что меня бесит, так это то, что когда я не делаю никаких запросов, лайтбокс работает нормально, но как только я щелкаю ссылку, чтобы сделать запрос AJAX, а затем щелкаю изображение, лайтбокс не работает. 1006 *

Я знаю, что проблема в лайтбоксе, который не добавляет событие click после выполнения другого запроса. Это происходит, когда я использую $('a').click() вместо $('a').live()

Но я не знаю, как это исправить. Может быть, мне нужно поменять лайтбокс на тот, который добавляет события кликов?

Помощь!

Ответы [ 2 ]

0 голосов
/ 10 августа 2010

Я только что поменял лайтбокс на лайтбокс Top Up, и он работал отлично.Возможно, более старый не будет создавать прослушиватели событий, использующие .live() 'из-за вызовов AJAX.

0 голосов
/ 16 июля 2010
$('a:not(a[rel~="lightbox")').live('click', function() {
    $('#content').load($(this).attr('href'));
    return false;
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...