2010-09-01 9 views
1

Hey - Avoir beaucoup de succès avec PhoneGap/HTML5 pour développer des applications iPad de base. Cependant, je rencontre quelque chose que je ne peux pas craquer, compte tenu de mes côtelettes Javascript limitées, et j'ai besoin d'aide avec ASAP.Ouverture et fermeture de la fenêtre contextuelle dimensionnée à l'aide de la classe SafariBrowserWindow

C'est une fonctionnalité assez simple dans le monde du navigateur normal - je veux faire apparaître une fenêtre d'une largeur et d'une hauteur donnée et avoir simplement la possibilité de la fermer, même avec quelque chose comme une ancre "Fermer la fenêtre".

Dans le monde normal JS, bien sûr, je pourrais coder les fonctionnalités en ligne ainsi:

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

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

et bien sûr, cela fonctionne très bien dans Safari dans le monde non-iPad.

Il s'avère qu'Apple encourage une approche différente pour l'ouverture d'une nouvelle fenêtre de navigateur: la classe SafariBrowserWindow dont les méthodes ne semblent pas pouvoir être codées correctement. Et une fois que je "PhoneGap" ma fenêtre normale window.open/close dans Xcode, la fonction window.open fonctionne, mais pas dans une fenêtre contextuelle modale - c'est une fenêtre en plein écran sans aucune possibilité de la dimensionner correctement. Mais bien pire, la norme `" javascript: self.close(); " ne fonctionne pas et je ne peux pas retourner dans ma fenêtre "parents" sans fermer l'application entière et la rouvrir.

Quelqu'un peut-il me donner un exemple de comment coder la fonctionnalité d'ouverture/fermeture à l'aide de la classe SafariBrowserWindow? Les fenêtres contextuelles de taille exacte, modale ou autre, qui appellent des fichiers HTML externes sont-elles impossibles dans le monde de l'iPad/iPhone?

Merci pour votre aide!

Répondre

Questions connexes