2011-08-24 47 views
1

我有一些链接,如:Fancybox插件:动态重写href选项

<a href='http://mysite.com/comment/123/edit' class='fancybox'>Edit comment</a> 

和Fancybox插件:

$(".fancybox").fancybox(); 

当我点击链接时,我会看到http://mysite.com/comment/123/edit的一些页面,但我想看http://mysite.com/comment/123/edit.js

我知道有href选项,但是如何重写它以在原始href的末尾附加.js

回答

5

为你申请的fancybox你可以改变href属性href您提到的选项:

$(".fancybox").each(function() { 
    $(this).fancybox({ href: $(this).attr('href') + '.js' }); 
}); 
+0

Yeap,就是这样。稍微修复'$(this).fancybox({href:$(this).attr('href')+'.js',ajax:{dataType:“html”}});'并且它可以工作。谢谢! – fl00r

+0

这是一个问题:一些'.fancybox'元素在你的函数被触发后会动态地附加到页面上。有没有办法直接在fancybox中改变'href'选项?所以我不需要看看页面上是否有新的'.fancybox'元素 – fl00r

+0

您是否已经需要将fancybox重新绑定到这些新元素?检查以前的问题:http://stackoverflow.com/questions/2532070/fancybox-getting-fancybox-to-bind-using-live-to-items-being-loaded-onto-the-pa –