当 Shadowbox 放置在 jQuery“.html”文件中时,它不起作用。功能

发布于 2024-09-02 15:42:48 字数 321 浏览 8 评论 0原文

好吧,我在名为“alerta”的 div 中放置了一个链接,其中包含 jQuery 函数“.html”。

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

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

如果链接直接放在页面上,则效果很好...

谢谢。

Well, I'm placing a link inside of a div called "alerta" with jQuery function ".html".

Ok, then I tried to place the "rel='shadowbox'" parameter inside of my "a" tag and it doesn't works.

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

If the link is placed directly on the page, it works fine...

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

浅浅淡淡 2024-09-09 15:42:48

Shadowbox 在页面加载时初始化具有 Shadowbox rel 的元素。如果您使用 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();

       });
});

Shadowbox initialises the elements that have a rel of shadowbox on page load. If you use jquery to add a link then the link won't have an event handler attached to it.

Try adding a class to the link, such as sbox. Then put this in your script tags instead of 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();

       });
});
原谅我要高飞 2024-09-09 15:42:48

我想你需要调用

Shadowbox.init();

或类似的方法来让 Shadowbox 知道新添加的链接。

更新
参见兰斯·梅的回答。我的已经过时了。

I suppose you need to call the

Shadowbox.init();

or somethink similar to make shadowbox aware of the newly added links.

UPDATE
see the answer form Lance May. Mine is obsolete.

心的位置 2024-09-09 15:42:48

看看下面的 SO 帖子。这可能有帮助。

jQuery - Shadowbox 重新绑定

Have a look at the following SO post. It may help.

jQuery - Shadowbox rebinding

萌化 2024-09-09 15:42:48

我解决了这个问题。您必须

(shadowbox.ini()) 

在放置所有“shadowbox links” 时进行初始化。

感谢您的支持。

I Solved the problem. You have to initialize

(shadowbox.ini()) 

just when all the "shadowbox links" are placed.

Thank you for the support.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文