Fancybox下载图片

我正在尝试为您当前在Fancybox中查看的图像制作一个下载按钮。 我认为这样做很容易,因为url已经存储在标签中,所以我想我可以重新使用它作为链接。

我甚至试图在fancybox中找到src ,然后将其添加到链接的href 标签) 。 我只是缺乏jQuery技能来完成它。

fancybox.js我添加了标签:

  Download 

我试着像这样复制并粘贴https://stackoverflow.com/questions/18273091/fancybox-download-image/image.jpeg ,但这不起作用:

 var href = $('.fancybox-image').attr('href'); $('a.test').attr('href', href ); 

jQuery的方式

这个答案显示了如何使用标准的jQuery方法实现这一点,纠正了OP给出的代码。 另请参阅Janis的答案 ,了解如何使用Fancybox完成此操作。

您在此处发布的代码无效,因为标记中没有href属性。 您应该使用src属性:

 var href = $('.fancybox-image').attr('src'); $('a.test').attr('href', href ); 

但是,只有当只有一个图像具有类.fancybox-image.fancybox-image 。 如果您的图库中有多个图像,请使用以下方法:

 $('.fancybox-image').each(function (){ var href = $(this).attr('src'); $(this).next("a").attr("href", href); }); 

jsFiddle在这里

我不确定我是否理解你的问题,但你可以在fancyBox的标题区域内添加下载链接 – http://jsfiddle.net/zAe6Z/

 $(".fancybox").fancybox({ afterLoad: function() { this.title = 'Download ' + this.title; }, helpers : { title: { type: 'inside' } } });