Я открываю новую страницу с window.open("apphelp.html", "_blank", "location=no")
, поэтому он показывает мне новое окно с моей страницей. В конце этой страницы я хотел бы поставить кнопку "закрыть", чтобы пользователь мог вернуться туда, откуда он пришел. Я пробовал с window.close()
, но это не сработало. Любое sugestion?
Эквивалент window.close в Phonegap с помощью InAppBrowser
Ответ 1
Я использую обходной путь... Так как inAppBrowser можно закрыть только с помощью кнопки "Назад" или "javascript". Я показываю кнопку закрытия с сервера, которая изменит текущий запуск url и событие loadstop, позволяющее использовать метод .close(), таким образом, только дочерний браузер будет закрыт, ваше приложение останется в том же состоянии.
Например, мой сервер отображает веб-страницу с кнопкой закрытия, что-то вроде этого:
<a href="/mobile/close">Close</a>
в javascript моей клиентской стороны (приложение Phonegap):
var ref = window.open(encodeURI(url), '_blank', options);
ref.addEventListener('loadstop', function(event) {
if (event.url.match("mobile/close")) {
ref.close();
}
});
Ответ 2
Я преобразую поддержку для нескольких платформ следующим образом:
на третьей странице html и js
closeBrowser(){
if(history.length==1){
window.open('mobile/close');
}else{
history.back();
}
}
<a href="javascript:;" onclick="closeBrowser()">Close</a>
на моей стороне javascript (приложение Phonegap):
var ref = window.open(encodeURI(url), '_blank','location=no');
ref.addEventListener('loadstart', function(event) {
if (event.url.match("mobile/close")) {
ref.close();
}
});
спасибо за первый этаж!