2017-07-11 17 views
0

我在Cordova應用程序中使用progressbar.js Progress BarJS進度條無法在InAppBrowser中工作

我的科爾多瓦應用程序使用'inAppBrowser'插件打開一個遠程html頁面(同一網絡,但遠離設備)。

當我在Ripple中進行調試/測試時,所有的功能都可以正常工作,但是在Android設備上,當在'inAppBrowser'中查看此頁面時,進度條只是無法初始化。

我試過兩種不同的Android設備,結果相同。

當在正常的Chrome瀏覽器中在Android上查看具有進度欄的同一頁面時,它可以按預期工作。我的應用程序只是使用'inAppBrowser'導航到這個頁面,那就是它的中斷點。

所有其他JS在「inAppBrowser」查看的頁面中工作正常,因此它是progressbar.js特有的。

我不知道如何調試這一個,因爲它肯定是一個JavaScript錯誤引發的地方,但我無法在Android設備上調試'inAppBrowser'頁面。 (或者更好,我不知道如何/如果我可以做到這一點?)

Chrome遠程調試使用在Android設備上的Chrome中運行您的代碼,這就是我的頁面實際運行的位置,看看這對我有什麼幫助。

有什麼建議嗎?

感謝

回答

0

Inpect與Chrome開發者工具chrome://inspect/#devices將允許在Chrome加載了Android設備上的任何頁面的遠程調試,所以假設你使用inappbrowser頁面加載到鍍鉻,這將讓你看到是什麼繼續。

+0

我不瀏覽出應用程序頁面。我使用'inAppBrowser',在應用程序內導航到頁面... –

+0

好吧,我使用'_system'參數,所以它在chrome中打開,我忘記了純粹的inappbrowser選項。 – MStoner

0

說完看了看documentation

它看起來像你可以使用:

inAppBrowserRef.addEventListener('loaderror', loadErrorCallBack); 

function loadErrorCallBack(params) { 

$('#status-message').text(""); 

var scriptErrorMesssage = 
    "alert('Sorry we cannot open that page. Message from the server is : " 
    + params.message + "');" 

inAppBrowserRef.executeScript({ code: scriptErrorMesssage }, executeScriptCallBack); 

inAppBrowserRef.close(); 

inAppBrowserRef = undefined; 

}