我写了以下代码:
function shareCount(url){
var count;
$.ajax({
type: "GET",
url: "http://api.facebook.com/method/fql.query?query=SELECT+share_count+FROM+link_stat+WHERE+url%3D%22http%3A%2F%2F9gag.com%2Fgag%2F"+encodeURIComponent(url)+"%22",
dataType: "xml",
success: function(xml) {
alert($(xml).find('share_count').text());
return $(xml).find('share_count').text();
}
});
//alert(count);
}
它只是向 facebook 发送一个 fql 查询以获取share_count
给定的链接,该链接很好,并且alert($(xml).find('share_count').text());
可以工作,但是当我返回计数时,另一个函数说 var 未定义!alert()
当我取消注释最后的范围时,也会发生同样的事情。
这是向该函数发送请求的其他函数的一部分(不确定是否相关)
g.innerHTML = h("#template", {
id: c.images[a].id,
title: c.images[a].title,
image: c.images[a].image.small,
time: c.images[a].time,
votes: c.images[a].votes,
url: c.images[a].url,
shareCount: shareCount(c.images[a].id)
});