使用Ajax更改Facebook按钮的URL

时间:2010-11-13 12:39:58

标签: ajax facebook xfbml

我想知道是否有可能在Ajax事件上更改类似Facebook的按钮的操作。

我想做什么: 我在页面加载时显示一篇文章。在文章的最后,我有一个按钮,通过Ajax加载下一篇文章。另外我有以下Facebook按钮:

<fb:like href="http://www.myurl.com" layout="standard" show-faces="true" action="like"  id="fblike" />

当我加载下一篇文章时,我通​​过Javascript将文章的新URL放入“href” - 属性中(工作正常),但是当我点击“赞”按钮时,最初的文章网址将被推送到Facebook,而不是新的。

有什么想法吗?

非常感谢。

2 个答案:

答案 0 :(得分:6)

您实际上并不需要iframe版本,因为它更受限制且不如性能好。您需要做的就是使用此代码片段重新渲染DOM中的按钮;没有页面刷新,元素不会“刷新”否则:

FB.XFBML.parse();

请参阅此处的文档:http://developers.facebook.com/docs/reference/javascript/

答案 1 :(得分:1)

您可以尝试iFrame版本而不是XFBML版本:

<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fexample.com%2Fpage%2Fto%2Flike&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>

有关更多信息,请参阅此处:

http://developers.facebook.com/docs/reference/plugins/like