Cordova InAppBrowser打開Web瀏覽器
這個插件用於Cordova 應用程序內打開Web瀏覽器。
第1步 - 安裝插件
我們能夠使用這個插件之前,需要在命令提示符窗口中安裝這個插件。
C:\Users\username\Desktop\CordovaProject>cordova plugin add cordova-plugin-inappbrowser
第2步 - 添加按鈕
我們將在 index.html 添加一個按鈕將用於打開 inAppBrowser 窗口。
第3步 - 添加事件監聽器
現在讓我們在index.j爲我們的按鈕添加事件偵聽器到 onDeviceReady 函數中。
document.getElementById("openBrowser").addEventListener("click", openBrowser);
第4步 - 創建函數
在這一步中,我們創建一個功能,在應用程序內打開瀏覽器。我們將其分配給之後可以用它來添加事件偵聽器的 ref 變量。
function openBrowser() {
var url = 'https://cordova.apache.org';
var target = '_blank';
var options = "location=yes"
var ref = cordova.InAppBrowser.open(url, target, options);
ref.addEventListener('loadstart', loadstartCallback);
ref.addEventListener('loadstop', loadstopCallback);
ref.addEventListener('loadloaderror', loaderrorCallback);
ref.addEventListener('exit', exitCallback);
function loadstartCallback(event) {
console.log('Loading started: ' + event.url)
}
function loadstopCallback(event) {
console.log('Loading finished: ' + event.url)
}
function loaderrorCallback(error) {
console.log('Loading error: ' + error.message)
}
function exitCallback() {
console.log('Browser is closed...')
}
}
如果我們按下 BROWSER 按鈕,將看到屏幕上的以下輸出。
控制檯也將監聽事件。loadstart事件將觸發當URL開始加載以及loadstop加載URL將閃光。我們可以控制檯中看到它在。
當關閉瀏覽器,退出事件將觸發。
InAppBrowser窗口其它可能的選擇。我們將在下面的表解釋。
option
details
location
用來打開瀏覽器地址欄中打開或關閉。它的值是 yes 或 no
hidden
用於隱藏或顯示inAppBrowser。 它的值是 yes 或 no
clearCache
用於清除瀏覽器的cookie緩存。 它的值是 yes 或 no
clearsessioncache
用於清除會話cookie緩存。它的值是 yes 或 no
zoom
用於隱藏或顯示Android瀏覽器的縮放控制。它的值是 yes 或 no
hardwareback
yes使用於硬件後退按鈕導航回到通過瀏覽器歷史記錄。 no用於關閉瀏覽器,當後退按鈕被點擊
我們可以用 ref(參考)變量爲一些其他功能。對於刪除事件偵聽器,可以使用 −
ref.removeEventListener(eventname, callback);
對於關閉 InAppBrowser 可以使用 −
ref.close();
如果我們打開了隱藏的窗口,我們可以顯示它 -
ref.show();
即使是JavaScript代碼可以被注入到InAppBrowser −
var details = "javascript/file/url"
ref.executeScript(details, callback);
可用於注入 CSS -
var details = "css/file/url"
ref.inserCSS(details, callback);