当jquery ajax()调用成功返回时,我需要帮助调用FB.api函数。显示Facebook名称的提醒仅适用于Chrome。与Firefox和IE8无关。警报(数据)正常,窗口也重新加载。但FB.api没有。非常感谢你的帮助:
function fb_login() {
FB.login(function(response) {
//alert('login');
if (response.authResponse) {
$.ajax({
url: 'fb_login.asp',
data: '',
type: 'POST',
dataType: 'text',
timeout: 10000,
error: function(){
alert('Error login Facebook');
},
success: function(data){
alert(data);
// do something with xml
FB.api('/me', function(resp) {
alert(resp.name);
});
window.location.reload();
//alert('ok');
}
});
}
}, {scope:'email,publish_stream'});
}
答案 0 :(得分:1)
对FB.api的调用是异步的,因此在执行回调函数之前页面会重新加载。试试这个:
FB.api('/me', function(resp) {
alert(resp.name);
window.location.reload();
alert('ok');
});