2010-09-07 19 views
0

我在我们的网站上使用了JQuery Gallerific相册。 http://www.twospy.com/galleriffic/example-5.html在JQuery Galleriffic上实现Facebook Like Button页面

我想在此页面上实现Facebook Like按钮和Open Graph Protocol。

Facebook的喜欢按钮

<fb:like href="http://www.twospy.com/galleriffic/example-5.html" layout="button_count"></fb:like> 

的Open Graph协议

<meta property="og:url" content="http://www.twospy.com/galleriffic/example-5.html"/> 
<meta property="og:image" content="http://farm4.static.flickr.com/3261/2538183196_8baf9a8015_s.jpg"/> 

我想改变OG:url和OG:图像链接时,对下一个按钮和以前按钮将相应页面用户点击链接。

比方说,第5图像上的用户点击,则打开图形协议链接应该改为

<meta property="og:url" content="http://www.twospy.com/galleriffic/example-5.html#5"/> 
<meta property="og:image" content="http://farm4.static.flickr.com/3150/2538167224_0a6075dd18_s.jpg" /> 

和喜欢按钮需要改变,以

<fb:like href="http://www.twospy.com/galleriffic/example-5.html#5" layout="button_count"></fb:like> 

请让我知道是否有可能。解决这个问题将拯救我的生命。请帮我看看代码。

谢谢。

+0

您使用的是服务器端语言吗?如果是这样,哪一个? – karim79 2010-09-07 00:13:41

+0

嗨Karim79,页面是html页面。我不打算在此页面上使用任何服务器端语言。是否有可能解决这个问题,使用jQuery和JavaScript。 – user374760 2010-09-07 01:42:58

回答

0

我遇到了同样的问题。问题在于社交网络“插件”(Facebook,Twitter,Google+等)都注入了他们工作的iframe。因此,更改页面的元信息发生得太晚了,因为它已经被解析为构建iframe,并且在此之后都被忽略,并且iframe中的任何JS都无法访问。我甚至尝试用iframe删除div,并在更改元信息后重新添加它,但第二次注入从不像第一次那样整齐。

我使用的解决方案是我在Galleriffic onSlideChange()方法中更新的“like”或“tweet”或“plus-one”按钮的旧式链接。之后您编码URL和标题,更改一个在href(假设它在下面的例子中“facebooksharer”的ID):

$("facebooksharer").attr("href","http://www.facebook.com/sharer/sharer.php?u="+newUrl+"&t="+newTitle); 

当然,你失去了在网上计数和“朋友也喜欢“,但至少游客可以喜欢画廊中的确切图像。