Javascript Changement d'Orientation ne fonctionne pas avec PhoneGap sur iPad
Je suis en train d'adapter un petit HTML/CSS/Javascript web piloté par le magazine comme une iApp pour l'iPad avec le grand mobile framework PhoneGap. Tout fonctionne très bien, sauf que le changement d'orientation du mode portrait au mode paysage.
- Je utiliser le code Javascript suivant dans l'en-tête de la index.html (portrait):
var isiPad = navigator.userAgent.match(/iPad/i) != null;
var isiPhone = navigator.userAgent.match(/iPhone/i) != null;
function updateOrientation() {
if (isiPad || isiPhone) {
switch (window.orientation) {
case 90:
window.location = "index_landscape.html";
break;
case -90:
window.location = "index_landscape.html";
break;
}
}
}
avec le suivant balise body:
<body onorientationchange="updateOrientation();">
Si j'ai faites pivoter l'iPad en mode paysage, il ne change pas de index-landscape.html.
Quelqu'un sait où est le problème?
N'est-il pas possible de modifier le fichier HTML, tandis que la modification de l'orientation dans le framework PhoneGap?
En d'autres termes, puis-je utiliser uniquement un fichier HTML (index.html) avec PhoneGap et utiliser les CSS pour le changement d'orientation?
Si j'découvrez l'application comme un site web avec l'iPad navigateur Safari, le changement d'orientation fonctionne correctement.
Merci pour toute aide!
OriginalL'auteur axooh | 2010-08-23
Vous devez vous connecter pour publier un commentaire.
Je viens de trouver une autre solution au problème. J'utilise le body onload de la fonction avec les onDeviceReady fonction de phonegap.js pour vérifier les orientations:
Le code javascript suivant fonctionne correctement:
Mise à JOUR: Il a travaillé plus de deux ans avec les anciennes versions de Phonegap et iOS SDK, mais selon certains utilisateurs, il ne fonctionne plus.
L'événement n'a pas fonctionné pour moi sur iOS 5 SDK.
Cela ne fonctionne pas, comme le webview est juste un enfant de la vue qui change réellement dans l'orientation
la réponse ici stackoverflow.com/questions/12685698/... a fonctionné pour moi sur (iOS 7, xcode 5, phonegap 3.1.0).
OriginalL'auteur axooh