FB.XFBML.parse() 不会刷新 Facebook 评论

FB.XFBML.parse() doesn't refresh Facebook comments

本文关键字:刷新 Facebook 评论 XFBML parse FB      更新时间:2023-09-26

我有一个JS照片库,当用户单击缩略图时,它将单个图像从API加载到页面中。我希望人们能够在每张图片上添加Facebook评论。所以我在包含图库的页面中有我的Facebook评论元素。

<div class="fb-comments" data-href="" data-num-posts="10" data-width="480"></div>

在加载页面并首先填充图库时,我将注释元素的 data-href 属性设置为第一个图像的 URL(例如 http://site.com/gallery/1027/1)。然后,如果用户单击缩略图,我将该属性重置为所选图像的URL。

fbComments.attr('data-href', data.link + index);
FB.XFBML.parse();

FB.XFBML.parse();是我读到的你应该做的,让Facebook刷新评论。我已经为一张图片添加了评论,并尝试单击没有评论的图像缩略图。但我对第一张图片的评论仍然存在。谁能说出为什么?

我尝试在我的JS文件中注销FB对象,并且它记录正常,因此在我调用它时它可用。我已经检查了我的 JS 中的点击事件是否确实将 data-href 属性更改为正确的值。当我在 fb 注释元素中硬编码不同的数据 href 时,注释会按预期呈现。

我建议您从 dom 中完全删除以前的注释框,然后插入一个带有正确数据 href 的新 html,然后调用 FB。XFBML.parse 方法。

另一件事是你应该指定在哪里解析,就像这样:

FB.XFBML.parse(document.getElementById("container-id"));