2012-10-12 35 views
3

我想跟随我在页面上看到多少喜欢,但有些错误。我正在使用Facebook JavaScript事件处理程序,但它不起作用。Facebook FB.Event.subscribe不起作用

它应该提醒我,当我点击类似的或不喜欢的按钮,但它什么都不做。任何想法,我错了?谢谢!抱歉我的英语。

这是我更新的代码:

<!DOCTYPE html> 
<html xmlns:fb="http://ogp.me/ns/fb#"> 
<head> 
<title>FBlike check</title> 
</head> 
<body> 
<div id="fb-root"></div> 
<script> 
(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_US/all.js#xfbml=1&appId=00000000000000000"; 
    fjs.parentNode.insertBefore(js, fjs); 
}(document, 'script', 'facebook-jssdk')); 

FB.Event.subscribe('edge.create', 
    function(response) { 
     alert('You liked the URL: ' + response); 
    } 
); 
</script> 
<fb:like href="https://www.facebook.com/XYZ" send="false" layout="button_count" width="200" show_faces="false"></fb:like> 
</body> 
</html> 

回答

6

嗯..我尝试了很多的版本比这个人是完美工作:

<script> 
window.fbAsyncInit = function() { 
      FB.init({ 
       appId: 'MY_APP_ID', 
       status: false, 
       cookie: false, 
       xfbml: true 
      }); 

      //Additional 
      FB.Event.subscribe('edge.create', 
         function (response) { 
          alert('LIKED: ' + response); 
         } 
       ); 
     }; 

     // Asynchronously 
     (function (d) { 
      var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0]; 
      if (d.getElementById(id)) { return; } 
      js = d.createElement('script'); js.id = id; js.async = true; 
      js.src = "//connect.facebook.net/en_US/all.js"; 
      ref.parentNode.insertBefore(js, ref); 
     } (document)); 

    </script> 
    <fb:like href="https://www.facebook.com/MY_FB_PAGE" send="false" layout="button_count" width="200" show_faces="false"></fb:like> 

我希望它可以帮助别人。

+0

它对我不起作用: ( – dragullar

1

您使用类似按钮的IFRAME版本 - JavaScript事件仅从XFBML版本发射 - 这是在Like Button documentation

解释如何知道用户何时点击Like按钮?

如果您使用XFBML版本的按钮,您可以通过FB.Event.subscribe订阅'edge.create'事件。

+0

我也尝试过,但仍然不起作用:(如果我使用XFBML like按钮比单击它时出现“post ot facebook”弹出窗口,这就是为什么我第一次使用iframe版本。 – DNReNTi

+0

是的,这是应该发生的,它是XFBML like按钮的一部分 - 您需要决定是否要回拨,或者您不希望用户在分享您的链接时输入消息 – Igy

+0

我明白,而且回调更重要这种情况下,即使使用XFBML按钮,它仍然不起作用,我将XML命名空间添加到了html标签,我更改了SDK包含,并且我更改了类似按钮,但没有任何反应 测试如下:链接](http://blog.nt-design.hu/fblikecheck/) – DNReNTi