Facebook应用程序:FB事件仅适用于第一次

问题描述:

我正在使用以下代码来订阅fb登录和注销事件。Facebook应用程序:FB事件仅适用于第一次

FB.Event.subscribe('auth.logout', function(response) { 
      RefreshPageOnFBStatusChange(response); 
      }); 

FB.Event.subscribe('auth.login', function(response) { 
      RefreshPageOnFBStatusChange(response); 
      }); 

function RefreshPageOnFBStatusChange(response) 
{ 
    alert(response.status); 
} 

我想在用户登录或注销时将用户重定向到不同的页面。我在这里使用的函数仅在实际的页面加载期间被调用,并且在此之后从来没有。我在页面上有一个fb-like,fb-share和直播插件。当我登录并注销直播时,没有任何反应。帮帮我!

+0

如果我在fb.​​init中设置status = false,会发生什么? – Kunal 2012-02-22 13:11:43

请修改您的问题并提供所有与FB相关的代码。 这可能会回答你的问题: Facebook FB.Event.subscribe event does not fire:(

对于用户的状态,你可以使用if(FB._userStatus ==“连接”){}检查用户登录或没有而对于退出&登录就可以使用下面简单的代码 FB.logout(function(response) { window.location = redriect_uri; });

当您使用实时聊天插件时,似乎这些事件不会触发,因为它具有自己的处理登录和注销的方式。我必须做的解决这个问题是设置5秒的超时时间,并调用一个JavaScript函数,做了一个FB.GetLoginStatus,并基于它是什么,我会刷新页面。不是做这件事的最好方式,但我没有选择。