2011-04-28 53 views
0

我試圖使用FB.Connect.logoutAndRedirect,但我得到這個錯誤:FB.Connect是未定義

FB.Connect.logoutAndRedirect [Break On This Error] FB.Connect.logoutAndRedirect("/logout");

我插入這個代碼

<div id="fb-root"></div> 
<script src="http://connect.facebook.net/en_US/all.js"></script> 
<script> FB.init({ 
    appId : 'my app id', 
    status : true, // check login status 
    cookie : true, // enable cookies to allow the server to access the 
session 
    xfbml : true // parse XFBML }); 
</script> 

<body>標籤

回答

4

FB.Connect基於舊版JS SDK,並且您正在使用new FB JS SDK。爲了讓你後的功能,嘗試FB.logout

function fbLogout() 
{ 
    FB.logout(function() 
    { 
     top.location.href = 'whatever'; 
    }); 
} 
1

喜歡的東西這將始終工作:

function fBlogout(){ 
    try{ 
     FB.Connect.ifUserConnected(function(){ 
      FB.Connect.logoutAndRedirect('http://fullurl.com/account/logout'); 
     }, 'http://fullurl.com/account/logout'); 
    }catch(e){ 
     location.href = 'http://fullurl.com/account/logout'; 
    } 
} 

HTML Link: 
<a href="#" onclick="FBlogout(); return false;">Log Out</a> 

參考:FB.Connect.logoutAndRedirect(''account/logout') will not redirect, even with proper session

+0

是的,這個功能看起來不錯,但FB.Connect仍然不確定:( – morandi3 2011-04-28 18:03:08

+0

您的代碼工作對我來說,當我添加適當的縮進嘗試把一個。新行}}; – 2011-04-28 18:06:22

+1

'FB.Connect'是傳統的SDK;新的只是'FB.',所以只要他參考新的SDK就不會工作。 – 2011-04-28 19:09:25

0

腳本標籤是不正確:

<script> src="http://connect.facebook.net/en_US/all.js"></script> 
     ^^^ 

與額外>,你所做的src=...部分是實際的JavaScript,只定義了一個名爲 'src' 中的變量。所以你實際上不包括FB JavaScript。

+0

對不起,我在這裏寫錯了標籤,在我的頁面中沒有問題 – morandi3 2011-04-28 18:30:10