Эквивалент window.close в Phonegap с помощью InAppBrowser - программирование
Подтвердить что ты не робот

Эквивалент window.close в Phonegap с помощью InAppBrowser

Я открываю новую страницу с window.open("apphelp.html", "_blank", "location=no"), поэтому он показывает мне новое окно с моей страницей. В конце этой страницы я хотел бы поставить кнопку "закрыть", чтобы пользователь мог вернуться туда, откуда он пришел. Я пробовал с window.close(), но это не сработало. Любое sugestion?

4b9b3361

Ответ 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();
     }
 }); 

спасибо за первый этаж!