检测点击Facebook按钮的时间

时间:2015-04-07 16:44:38

标签: javascript jquery facebook

我有以下JavaScript代码

<div class="fb-like-box" data-href="snip" data-colorscheme="light" 
    data-show-faces="false" data-header="false" data-stream="false" 
    data-show-border="true"></div>

我正在尝试检测单击“喜欢”按钮的时间。上面的代码呈现了iframe,因此我的jquery事件处理程序为

$('.fb-like-box > button').on('click', function() { console.log('Clicked'); });

永远不要开火。我尝试将这个div和其他内容包装在一个包装div中并在$()调用中定位,但它只在单击其他内容时触发,而不是由Facebook SDK呈现的区域。

3 个答案:

答案 0 :(得分:5)

https://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/v2.3

您只需为喜欢订阅edge.create活动即可。请参阅文档以获取示例代码。

但是如评论所述,您不能因为喜欢而奖励用户。阅读平台政策以获取更多信息:https://developers.facebook.com/policy/


更新:https://developers.facebook.com/blog/post/2017/11/07/changes-developer-offerings/

  

edge.create和edge.remove JS SDK事件:将无法再访问这些事件。作为替代方案,您可以使用我们的Webhooks,并在每次有人喜欢您的某个Facebook页面时收到通知。

答案 1 :(得分:0)

此代码适用于我:

<script>
var liked_page = function() {
  alert("liked!");
}

FB.Event.subscribe('edge.create', liked_page);
</script>

我把它放在页面的末尾。此外,我相信你也应该放置

<div id="fb-root"></div>

在页面的开头,紧跟在&lt; body&gt;之后标签

答案 2 :(得分:0)

edge.create和edge.remove JS SDK事件:将无法再访问这些事件。作为替代方案,您可以使用我们的Webhooks,并在每次有人喜欢您的某个Facebook页面时收到通知。

https://developers.facebook.com/blog/post/2017/11/07/changes-developer-offerings/