获取Facebook喜欢与jquery一起出错

时间:2012-01-24 11:20:51

标签: javascript jquery facebook

我有一个小脚本,通过jquery提取喜欢和推文计数网址。现在它工作得很好,但是当某个页面有0个像/ shares时,则jquery返回'undefined',因为'shares'部分没有显示在输出中。

$(document).ready(function() {
    url = "http://awebsitehere.com/";
    beforecounter = " <b>";
    aftercounter = "</b>";

    // Get Number of Facebook Shares
    $.getJSON('http://graph.facebook.com/'+url+'&callback=?',
        function(data) {
            $('#facebook').append(beforecounter + data.shares + aftercounter);
    });

    // Get Number of Tweet Count
    $.getJSON('http://urls.api.twitter.com/1/urls/count.json?url='+url+'&callback=?',
        function(data) {
            $('#twitter').append(beforecounter + data.count + aftercounter);
    });


})

当facebook获得某个网址的0份/喜欢时,如何编辑此脚本以显示0而不是未定义?

2 个答案:

答案 0 :(得分:4)

试试这个:

$('#facebook').append(beforecounter + (data.shares || 0) + aftercounter);

同样适用于推特价值。

答案 1 :(得分:0)

首先,您必须创建网页的用户名(请参阅您的网页名称@username。只需点击它...)

然后转到https://developers.facebook.com/tools/explorer/并获取访问令牌密钥

然后编写类似的东西

function facebookLikesCount(access_token, pageusername)
{
var url = "https://graph.facebook.com/"+pageusername+"?fields=likes&access_token="+access_token+"";

$.getJSON(url,function(json){
alert(json.likes);
});
}

facebookLikesCount('your accesstoken', 'pageusername');

它为我工作。