在Ajax请求之后创建Facebook共享按钮

时间:2015-07-31 15:29:14

标签: javascript jquery ajax facebook

当前情景: 用户通过我的网站登录Facebook。登录后,立即使用Ajax(一个快乐的短语)向他提供随机内容。此内容链接到OpenGraph有效静态页面(尊重Facebook OpenGraph最佳实践)。与此同时,Facebook Share弹出窗口弹出,他/她可以在Facebook上分享他的快乐短语。

利益相关方(a.k.a。妻子)的理想情景:

不应自动弹出Share-pop-up。 动态" fb分享按钮"应该用JS生成,所以:用户阅读快乐短语,用户满意,用户点击Facebook上的分享。

我的尝试:

$.getJSON( "ajax/fortune.php?id="+response.id, function( data ) {
   console.log(data);
   $( "#result" ).html( data.message );
   $("#shareButton").html('<div class="fb-share-button" data-href="http://www.-----.com/cookie/'+data.cid+'" data-layout="button_count"></div>');
});

结果:没有任何反应。我只需要把那个按钮放在那里。

我的计划B将放置一个img按钮或bootstrap共享按钮,其中包含指向FB sharer.php的链接。但我认为这不是一个好方法。

任何线索:)?

RMK:使用jquery 1.11.3

1 个答案:

答案 0 :(得分:2)

添加后必须渲染它。

$.getJSON( "ajax/fortune.php?id="+response.id, function( data ) {
   console.log(data);
   $( "#result" ).html( data.message );
   $("#shareButton").html('<div class="fb-share-button" data-href="http://www.-----.com/cookie/'+data.cid+'" data-layout="button_count"></div>');
   FB.XFBML.parse(document.getElementById('shareButton'));
});