ไม่มีคำตอบใดที่ชัดเจนเพียงพอที่จะเปิดลิงก์ภายนอกในแต่ละแพลตฟอร์ม ตามเอกสาร inAppBrowser :
ติดตั้ง
cordova plugin add cordova-plugin-inappbrowser
เขียนทับ window.open (ไม่บังคับ แต่แนะนำเพื่อความเรียบง่าย)
window.open = cordova.InAppBrowser.open;
หากคุณไม่เขียนทับwindow.open
คุณจะใช้window.open
ฟังก์ชันเนทีฟและไม่สามารถคาดหวังว่าจะได้ผลลัพธ์เดียวกันข้ามแพลตฟอร์ม
ใช้เพื่อเปิดลิงก์ในเบราว์เซอร์เริ่มต้น
window.open(your_href_value, '_system');
โปรดทราบว่าเป้าหมายสำหรับ inAppBrowser (ซึ่งเป็นสิ่งที่ชื่อปลั๊กอินที่แสดงให้เห็นก็คือการที่จะใช้สำหรับ) เป็นแทน'_blank'
'_system'
หากไม่มีขั้นตอนข้างต้นฉันไม่สามารถรับลิงก์เพื่อเปิดในแอปเบราว์เซอร์เริ่มต้นข้ามแพลตฟอร์มได้
สินเชื่อพิเศษ
นี่คือตัวอย่างตัวจัดการคลิก (สด) สำหรับลิงก์:
document.addEventListener('click', function (e) {
if (e.target.tagName === 'A' &&
e.target.href.match(/^https?:\/\//)) {
e.preventDefault();
window.open(e.target.href, '_system');
}
});
_blank
เบราว์เซอร์ภายนอกและ_self
ไปที่ WebView ให้ตรวจสอบโซลูชันปี 2015 ของฉันสำหรับ Cordova 5.1.1: stackoverflow.com/a/32227524/82609