jquery:fancybox缩略图助手,如何指定源?
我使用的是fancyBox 2,我使用的是“缩略图助手”。当我的图库中有图像时,fancyBox会自动将目标图像用于缩略图,但当我链接到视频(在我的例子中是Vimeo)时,它不会生成缩略图。我以为只要为fancyBox指定一个用于视频链接的图像就可以很容易地解决这个问题,但我不知道如何做到这一点 在网站上,它说缩略图助手有一个“源”选项,应该像这样使用它来启用缩略图,并设置源:jquery:fancybox缩略图助手,如何指定源?,jquery,fancybox,thumbnails,helper,Jquery,Fancybox,Thumbnails,Helper,我使用的是fancyBox 2,我使用的是“缩略图助手”。当我的图库中有图像时,fancyBox会自动将目标图像用于缩略图,但当我链接到视频(在我的例子中是Vimeo)时,它不会生成缩略图。我以为只要为fancyBox指定一个用于视频链接的图像就可以很容易地解决这个问题,但我不知道如何做到这一点 在网站上,它说缩略图助手有一个“源”选项,应该像这样使用它来启用缩略图,并设置源: $(".fancybox").fancybox({ helpers: { thumbs :
$(".fancybox").fancybox({
helpers: {
thumbs : {
source : 'img/~~~.jpg'
}
}
});
但当然,这是行不通的,因为我怎样才能指定哪个缩略图用于哪个目标图像或视频?我找不到任何缩略图助手用于视频或自定义缩略图的工作示例。提前感谢您的帮助
编辑:
“源”选项被描述为“获取缩略图的URL的函数”。我正在想办法如何使用它。我在想类似的事情
source: item.thum
$(".fancybox").fancybox({
helpers: {
thumbs : {
source : function ( item ) {
return "/url/to/img.ext"; //get the image url for thumbnail
}
}
}
});
其中,我在引用的每个项目中都有一个缩略图源的“thum”属性,例如
$.fancybox.open([
{href : 'image1.jpg', thum : 'thumb1.jpg'},
{href : 'image2.jpg', thum : 'thumb2.jpg'},
{href : 'image3.jpg', thum : 'thumb3.jpg'}],
{helpers : {
thumbs:{source:this.thum}
} }
)
是这样的吗?你明白我的意思吗?我如何才能真正做到这一点?正如你所看到的,我不会说JavaScript。应该是这样的
source: item.thum
$(".fancybox").fancybox({
helpers: {
thumbs : {
source : function ( item ) {
return "/url/to/img.ext"; //get the image url for thumbnail
}
}
}
});
我这样做的:我的函数找到了
href
元素包含字符串http://vimeo
,并将整个href
替换为我用于视频的缩略图的url
我也必须学习正则表达式,才能使它工作
$(".fancybox").fancybox({
helpers : {
thumbs : {
source: function( item ) {
return item.href.replace(/http:\/\/vimeo.*/gi, 'img/vimeo.jpg');
},
});
事实上,我的图库中的iFrame中也有一个HTML文件,我也想给出它自己的缩略图,所以我的最终产品是:
$(".fancybox").fancybox({
helpers : {
thumbs : {
source: function( item ) {
return item.href.replace(/http:\/\/vimeo.*/gi, 'img/vimeo.jpg')
.replace(/.*html/gi, 'img/html.jpg');
},
});
对于任何发现此线程并希望在实践中看到此示例的人,请访问我使用此线程的站点。对于不同iFrame(vimeo、youtube等)的不同拇指,我最终完成了此操作。或多或少是您的原始计划:
$.fancybox.open([
{
href : 'photo.jpg',
thumb : 'photo-thumb.jpg'
}
], {
helpers : {
thumbs : {
source : function( item ) {
if (item.thumb) {
return item.thumb;
} else {
return item.href;
}
}
}
}
});
非常感谢。这几乎是我所需要的。