当它放在jQuery“.html”函数中时,Shadowbox不起作用

时间:2010-05-20 14:40:46

标签: jquery shadowbox

好吧,我正在使用jQuery函数“.html”在一个名为“alerta”的div中放置一个链接。

好的,然后我尝试将“rel ='shadowbox'”参数放在我的“a”标签内,但它不起作用。

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

如果链接直接放在页面上,它可以正常工作......

感谢。

4 个答案:

答案 0 :(得分:1)

Shadowbox会在页面加载时初始化具有relbox影子的元素。如果使用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 :(得分:1)

我想你需要打电话给

Shadowbox.init();

或者类似于使影子箱知道新添加的链接。

<强>更新 请参阅Lance May的答案。我的已经过时了。

答案 2 :(得分:0)

查看以下SO帖子。这可能有所帮助。

jQuery - Shadowbox rebinding

答案 3 :(得分:0)

我解决了这个问题。你必须初始化

(shadowbox.ini()) 

当所有"shadowbox links"被放置时。

感谢您的支持。