Facebook无限循环,setTimeout没有帮助=(

时间:2012-03-16 22:19:26

标签: javascript facebook oauth reload infinite-loop

使用ie和firefox(Facebook Javascript SDK window location reload not working on Firefox)时,我的脸书上有一个循环 因为:

FB.Event.suscribe('auth.login',function(response){
    location.reload(true);
});

我试过:

FB.Event.suscribe('auth.login',function(response){
    window.setTimeout('location.reload(true)',0);
});

但它一直在循环。

其他信息:我只使用html,javascript和jquery,而不是使用php,asp,aspx,ruby,除此之外别无其他。

2 个答案:

答案 0 :(得分:0)

更改为:

FB.Event.suscribe('auth.login',function(response){
   window.setTimeout(function () {
       location.reload(true);
   },0);
});

答案 1 :(得分:0)

如果用户已经连接,则不应调用重新加载

FB.getLoginStatus(function(response) {
    var reload = function(){location.reload(true);};
    if(response.status !== 'connected'){
        FB.Event.subcribe('auth.login',function(response){
            setTimeout(reload,0);
        });
    }else {
        FB.Event.subcribe('auth.logout',function(response){
            setTimeout(reload,0);
        });
    }
});