目标:
我想在我的fancybox 中有一个分享按钮,可以在Facebook 分享器中用正确的图片名称分享我正在查看的图片。我希望当用户在 Facebook 中点击它时,他会到达一个打开的带有正确图像的 Fancybox。
问题:
我有一个带有 Jquery FancyBox 的画廊(http://fancyapps.com/fancybox/)。我用我在这个小提琴( http://jsfiddle.net/G5TC3/)中找到的代码添加了一个分享按钮。我的分享按钮有效,但从网站获取元 og,我想从我正在查看的图像中获取 og:image。
$(".fancybox")
.attr('rel', 'gallery')
.fancybox({
beforeShow: function () {
if (this.title) {
// Add FaceBook like button
this.title += '<iframe src="//www.facebook.com/plugins/like.php?href=' + this.href + '&layout=button_count&show_faces=true&width=500&action=like&font&colorscheme=light&height=23" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:110px; height:23px;" allowTransparency="true"></iframe>';
}
},
helpers : {
title : {
type: 'inside'
}
}
});
对于单击我的链接并到达带有正确图像的打开的 Facybox 的用户,我不知道如何做到这一点以及是否可能。
我所知道的:
我知道我必须为每张图片设置唯一的 URL,我想我有。来自我的网站:
www.myURL.com/images/gallery/myimages_1.jpg
www.myURL.com/images/gallery/myimages_2.jpg
这是对的吗?
我想我必须通过图像网址更改共享器中的“this.href”。首先是否正确?第二(对不起,我是 javascript 新手)我该怎么做?
我希望有人可以帮助我。对不起我的英语我正在努力写出我最好的英语:) 如果您需要更多信息,请不要犹豫。
谢谢
[编辑]:
我在画廊页面上添加了这个脚本
$(function()
{
$('.thumbs').click(function()
{
$tempImgName = $(this).attr('id');
$tempUrl = this.href + '/images/thumbs/' + $tempImgName;
$meta = document.getElementById('facebook');
$meta.setAttribute("content",$tempUrl);
});
});
因此,当我单击缩略图(使用 .thumbs 类)时,我会得到图像 URL 并更改元数据(使用 facebook Id)。它可以工作,但我认为 Facebook 在页面加载时会检查元数据,那么我如何才能强制 Facebook 重新检查我的元数据以分享好的拇指?