Facebook评论在重新访问动态页面时消失

时间:2012-03-30 17:41:06

标签: javascript ajax facebook facebook-comments

我有一个问题,一直在我的AJAX驱动网站上显示Facebook评论。我网站的每个动态页面都有Facebook评论。 Facebook评论显示在第一次访问页面时,但当我离开页面并返回到它时,Facebook评论不再出现。如果我刷新页面然后Facebook评论将重新出现,但当我离开并返回到同一页面时它们仍然消失。我有一种感觉,这个问题与第二次调用insertBefore()有关。有人可以建议解决这个问题吗?以下是我的代码:

我的代码:

<div class="comments-detail-view">
        <div id="fb-root"></div>
        <script type="text/javascript">
                (function(d, s, id) {
                    var js, fjs = d.getElementsByTagName(s)[0];
                    js = d.createElement(s); js.id = id;
                    js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=xxxxxxxxxx";
                    fjs.parentNode.insertBefore(js, fjs); //  **insertBefore()**
                }(document, 'script', 'facebook-jssdk'));  
        </script>
        <div class="fb-comments" data-href="UNIQUE DYNAMIC URL" ></div>
</div>

1 个答案:

答案 0 :(得分:0)

尝试使用函数重新解析。在示例中,我可以通过触发函数并使用xfbml进行解析来重新加载带有注释框的fbc DIV。


<div id="fbc"></div>
<script>
function comments(){
var lb=document.getElementById('fbc');
lb.innerHTML='<div class="fb-comments" data-href="UNIQUE DYNAMIC URL" ></div>';
FB.XFBML.parse(lb);
};
</script>