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

Facebook infinite loop, setTimeout not helping =(

本文关键字:有帮助 setTimeout 无限循环 Facebook      更新时间:2023-09-26

使用ie和firefox时,我在facebook上有一个循环(facebook Javascript SDK窗口位置重载在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,仅此而已。

更改为:

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

如果用户已经连接,则不应该调用reload

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);
        });
    }
});