2

我可以要求这样的 facebook 评论:

<div class="fb-comments" data-href="http://www.google.com/" data-num-posts="2" data-width="470"></div>

现在我想用'追加'到一个名为'.description'的div来动态调用它,如下所示:

setTimeout(function() {
$('.embed').find('.description').append('<div class="fb-comments" data-href="http://www.google.com/" data-num-posts="2" data-width="470"></div>');
}, 1000);

问题是它没有附加。看一下例子:JsFiddle

我还将 facebook 评论作为常规 div 放在 HTML 部分中,只是为了表明 facebook 脚本没有问题。

4

1 回答 1

3

您将不得不实现 Facebook JavaScript SDK。该 SDK 有一个名为FB.XFBML.parse().

此函数动态解析和呈现文档中的 XFBML 标记。如果您通过 ajax 从服务器发送 XFBML 并希望在客户端呈现它,则可以使用此方法。XFBML 使您能够将 FBML 合并到您的网站和 IFrame 应用程序中。

您所要做的就是附加评论插件代码,然后FB.XFBML.parse()在包含元素的 ID 上执行该函数。

FB.XFBML.parse(document.getElementById('facebook_comments_holder'));

使用 jQuery(以及在您的具体示例中),我相信您需要的代码是这样的 -

// assuming the folowing selector matches only one element
var element = $('.embed').find('.description')[0];
FB.XFBML.parse(element);
于 2012-10-08T10:28:31.400 回答