Shadowbox не работает, когда он находится внутри функции jQuery ".html". - PullRequest
1 голос
/ 20 мая 2010

Ну, я помещаю ссылку в div с именем "alertta" с помощью функции jQuery ".html".

Хорошо, тогда я попытался поместить параметр "rel = 'shadowbox'" внутри моего тега "a", и он не работает.

$('#alerta').html('<a href="selecao.php?id=' + 
                    avisos[i+1] + '" rel="shadowbox">' + avisos[i] + '</a>');

Если ссылка размещена прямо на странице, она отлично работает ...

Спасибо.

Ответы [ 4 ]

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

Shadowbox инициализирует элементы, которые имеют отношение к shadowbox при загрузке страницы. Если вы используете jquery для добавления ссылки, то к ссылке не будет прикреплен обработчик событий.

Попробуйте добавить класс по ссылке, например, sbox. Затем поместите это в теги скрипта вместо Shadowbox.init ();

window.onload = function() {
   Shadowbox.setup($('.sbox'));
};

Shadowbox.init({
     skipSetup:true, // skip the automatic setup    
});

$(document).ready(function(){

       $('a.sbox').live('click',function(event){

       Shadowbox.open(this);
       //Stops loading link
       event.preventDefault();

       });
});
1 голос
/ 20 мая 2010

Полагаю, вам нужно позвонить на

Shadowbox.init();

или что-то похожее, чтобы shadowbox знал о недавно добавленных ссылках.

UPDATE см. форму ответа Лэнс Мэй. Моя устарела.

0 голосов
/ 20 мая 2010

Я решил проблему.Вы должны инициализировать

(shadowbox.ini()) 

только тогда, когда все "shadowbox links" размещены.

Спасибо за поддержку.

0 голосов
/ 20 мая 2010

Посмотрите на следующий пост. Это может помочь.

jQuery - повторная привязка Shadowbox

...