Открытие и закрытие контекстного всплывающего окна с использованием класса SafariBrowserWindow - PullRequest
1 голос
/ 01 сентября 2010

Привет - С большим успехом использую PhoneGap / HTML5 для разработки основных приложений для iPad. Тем не менее, я сталкиваюсь с тем, что не могу разгадать, учитывая мои ограниченные возможности Javascript, и мне нужна помощь как можно скорее.

Это довольно простая функциональность в обычном мире браузера - я хочу открыть окно с заданной шириной и высотой и просто иметь возможность закрыть его, даже с чем-то таким же хромым, как якорь «Закрыть окно».

В обычном мире JS, конечно, я мог бы кодировать обе функции встроенным образом:

<a href="javascript:window.open('URL','name','height=400,width=600');">Open a Window</a>

<a href="javascript:self.close();">Close this Window</a>

и, конечно, это прекрасно работает в Safari в мире, где нет iPad.

Оказывается, Apple поощряет другой подход к открытию нового окна браузера: класс SafariBrowserWindow, методы которого, как мне кажется, не могут правильно кодироваться. И как только я «PhoneGap» мой нормальный функционал window.open/close в Xcode, функция window.open работает, но не в модальном всплывающем окне - это полноэкранное окно без какой-либо возможности правильно его размер. Но гораздо хуже, стандартный `" javascript: self.close (); " не работает, и я не могу вернуться в свое «родительское» окно, не закрыв все приложение и не открыв его снова.

Может ли кто-нибудь предоставить мне пример того, как я мог бы кодировать функциональность открытия / закрытия, используя класс SafariBrowserWindow? Разве всплывающие окна точного размера, модальные или иные, которые вызывают внешние HTML-файлы, невозможны в мире iPad / iPhone?

Спасибо за вашу помощь!

1 Ответ

0 голосов
/ 12 мая 2011

Вам нужно будет использовать плагин ChildBrowser :

https://github.com/purplecabbage/phonegap-plugins/tree/master/iPhone/ChildBrowser

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...