2012-03-02 114 views
0

所以即時通訊開發一個需要來自Facebook的額外權限的應用程序。我有一個請求權限和回調執行某個功能的按鈕。即時通訊運行的問題是,如果用戶已經給予權限,並再次點擊繼續登錄彈出窗口仍然出現,並立即關閉。我發現一種方法來檢查用戶是否有權執行FB.login命令之前(女巫使這個彈出窗口只出現在用戶沒有權限),但我然後遇到彈出窗口阻止問題,因爲我把FB.login調用放入該檢查的其他聲明。Facebook登錄彈出式問題

據我所知FB.login必須在相同的功能流程,以避免彈出窗口阻止程序。

這裏是我的代碼:

$('#shareList').click(function (event) { 
    FB.api('/me/permissions', function (data) { 
     if (data.data[0].photo_upload == 1) { 
      $.uploadPic(); 
      //return false; 
      //event.stopPropagation(); 
     } 
    }); 

    FB.login(function (response) { 
     if (response.authResponse) { 
      $.uploadPic(); 
     } else { 
      alert('Tekkis viga'); 
     } 
    }, {scope:'photo_upload'}); 

    return false; 
}); 

理想我想,如果它落入photo_upload檢查是檢查停止功能,並進行登錄電話。我確實嘗試都返回false和event.stopPropagation(),但他們似乎並沒有工作。有什麼可以解決這個問題的?

回答