2012-09-18 39 views
0

我有一個使用Facebook Connect的移動網站來驗證用戶身份。 Opera Mobile遇到了問題登錄問題。我有下面的JavaScript來檢測登錄狀態,但只有在Opera Mobile中,回調不會觸發。有沒有人遇到過這個問題?FB.Login不能在Opera Mobile中工作

window.fbAsyncInit = function() { 
     FB.init({ 
      appId: 'xxxx', 
      channelUrl: 'http://xxxx/channel.html', 
      status: true, 
      cookie: true, 
      xfbml: true 
     }); 

     FB.Event.subscribe('auth.statusChange', handleStatusChange); 
    }; 

function handleStatusChange(response) { // --> NOT FIRE 
    if (response.authResponse) { 
     //Login, show Logout button 
    } 
    else { 
     //Show Login button 

    } 
} 

回答

0

Opera Mobile今天發佈了新的版本(12.10.ADR-1210081231)。它解決了Facebook登錄問題,但有一個小問題。用戶登錄後Facebook窗口不會自動關閉。

0

請確保你把JS標籤和其他所需的HTML邏輯順序(如果您使用的FB-根元素把腳本後,儘量把他們體內,如果他們目前在HEAD) 。我見過FB登錄失敗,因爲標籤順序錯誤,並且由於一些瀏覽器做了「推測性解析」,導致隨機跨瀏覽器故障的原因可能不會立即顯現。 (此外,如果網絡出現呃逆,並且加載內容的時間是意外的,那麼您可能會在任何瀏覽器中創建競爭條件。)

如果仍有問題,則獲得鏈接或演示來看看。我們測試了一個使用FB Connect的隨機頁面,並且工作正常。除了標籤訂單問題之外,我無法猜測您在這裏可能會出現什麼問題。

+0

謝謝。我將嘗試按照您所提到的順序重新安排訂單。 – kevin

+0

嗨hallvors,我試過你的建議,但沒有運氣。 Facebook官方樣本也出現這種情況。它將無法使用Opera移動設備登錄。 www.facebookmobileweb.com/hackbook/ – kevin

+0

我們將嘗試調查此問題。 – hallvors