FaceBook like-button回调无法正常工作

时间:2012-07-10 16:28:27

标签: php javascript facebook

有谁可以告诉我为什么回调不适用于下面给出的类似按钮代码?据我所知,代码是JavaScript中设置的标准。初始化第一个按钮,然后异步加载API,并提供回调函数。

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

window.fbAsyncInit=function(){
    FB.init({
        appId:'',//App ID
        status:false,// check login status
        cookie:true,// enable cookies to allow the server to access the session
        xfbml:true// parse XFBML
    });
    // Additional initialization code here

    FB.Event.subscribe('edge.create', function(response) {
        //alert("user_id1:<?php echo $user_id1; ?>, user_id2:<?php echo $user_id2; ?>");
        /*var data={
            action:"ap_buttons_give_points",
            author_id:<?php echo $author_id; ?>,
            post_id:<?php echo $post_id; ?>,
            type:"like"
        }

        jQuery.post("<?php echo $ajax_url; ?>",data,function(resp){

        });*/
    alert('You just liked the page!');
});

    FB.Event.subscribe('edge.remove', function(response) {
        /*var data={
            action:"ap_buttons_take_points",
            author_id:<?php echo $author_id; ?>,
            post_id:<?php echo $post_id; ?>,
            type:"like"
        }

        jQuery.post("<?php echo $ajax_url; ?>",data,function(resp){
            //alert("fb remove:"+resp);
        });*/
    alert('You just unliked the page!');
});
};

// Load the SDK 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>

2 个答案:

答案 0 :(得分:0)

我发生这种情况的唯一时间是我使用Like按钮的iframe版本。我发现该回调在该版本中根本不起作用。如果是这种情况,您将需要使用找到here的Javascript SDK版本,使用XFBML或HTML5:

<fb:like send="true" width="450" show_faces="true"></fb:like>

<div class="fb-like" data-send="true" data-width="450" data-show-faces="true"></div>

答案 1 :(得分:0)

是的,代码似乎没问题。我有点同样的问题但只有fb像按钮,iframe版本。 我在你的例子中没有看到fb按钮,所以我不知道你使用的是哪一个......所以,根据我的经验,使用标准的fb就好了。