Ни один из этих ответов не является достаточно явным, чтобы внешние ссылки открывались на каждой платформе. В соответствии с 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