2012-07-14 85 views
1

我使用Phonegap Childbrowser進行oAuth 2.0身份驗證。在認證之後,我想在網頁中使用Javascript來隱藏Childbrowser而不用按「完成」按鈕。怎麼做?如何啓用Javascript來控制Phonegap Childbrowser?

例如,認證後,我們總是會得到一些回調參數。這意味着我們的認證是成功的。目前,我們應該關閉我們的瀏覽器,並且我想通過Javascript關閉瀏覽器而不用按任何按鈕。

回答

0

ChildBrowser插件有一個close()方法從JavaScript代碼關閉窗口。在childBrowser

window.plugins.childBrowser.close(); 
2

捕捉onLocationChange和檢查url參數,看它是否包含你在找什麼。如果是這樣,請撥打childBrowser.close()

ChildBrowser的一個奇怪之處在於它沒有.clear()方法,所以我創建了一個名爲nothing.html的空白頁面。如果您不這樣做,下次您使用ChildBrowser時,您會短暫地看到您的授權頁面。這對於Facebook和Twitter驗證我的redirectUrl加倍。所以當它到達那個頁面時,我知道是時候關閉了。

var URL_NOTHING = 'nothing.html'; 
window.plugins.childBrowser.onLocationChange = function (url) { 
    if (url.indexOf(URL_NOTHING) > -1) { 
     if (url.indexOf('oauth_token') > -1) { //twitter 
      window.plugins.childBrowser.close(); 
      //do twittery stuff 
     } else { //facebook 
      window.plugins.childBrowser.close(); 
      //do facebooky stuff 
     }; 
    }; 
}; 
相關問題