Facebook喜欢并分享ajax上的按钮

Aka*_*007 6 ajax jquery facebook django-templates

背景: - 使用ajax获取一个名为"foo_posts"的实体.在这篇文章我使用Facebook分享和喜欢按钮

{% for post in foo_posts %}
    <div class="foo">
        {{ post }}
        <div class="fb-like" data-send="true" data-width="450" data-href="http://foo/foo/detail/{{ foo.id }}/" data-show-faces="true"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

{%endfor%}现在使用Ajax填充这些帖子.

问题: - Facebook喜欢和分享被初始化

$(function(d, s, id) {
              var js, fjs = d.getElementsByTagName(s)[0];
              if (d.getElementById(id)) return;
              js = d.createElement(s); js.id = id;
              js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1&appId=245185848840630";
              fjs.parentNode.insertBefore(js, fjs);
        }(document, 'script', 'facebook-jssdk'));
Run Code Online (Sandbox Code Playgroud)

这不起作用.如何调用此函数,以便正确填充like和share?应该在ajax成功函数中调用它.(现在正在页面上调用它)

PS: - 我在成功函数中试过了.我想这样做错了.

Jui*_*ter 20

默认情况下,XFBML标记仅在Facebook JS-SDK初始化时进行解析.

FB.XFBML.parse()在呈现页面后,您应该在将社交插件添加到DOM后调用方法.

您可以为所有文档调用它,也可以通过指定元素来搜索以下内容中的XFBML元素:

FB.XFBML.parse();
// OR
FB.XFBML.parse(DOM_ELEMENT_WHERE_AJAX_CONTENT_IS_PLACED);
Run Code Online (Sandbox Code Playgroud)