de la fenêtre.orientation renvoie des valeurs différentes dans iOS et Android
Je suis en train de tester mon Application Web sur iPad (navigateur Safari) et Samsung Tab 2 (navigateur par Défaut). Le fenêtre.orientationchange renvoie des valeurs différentes dans les deux dispositifs.
$(document).ready(function() {
window.addEventListener("orientationchange", centerLoginBox);
window.addEventListener("load", centerLoginBox);
});
function centerLoginBox() {
if (window.orientation == 90 || window.orientation == -90) { //Landscape Mode
$('#loginbox').css('margin-top', '20%');
alert(window.orientation);
}
else if (window.orientation == 0 || window.orientation == 180) { //Portrait Mode
$('#loginbox').css('margin-top', '40%');
alert(window.orientation);
}
Dans l'Onglet 2 de l'alerte jette '0' et '180' pour paysage mode et les valeurs '90' et '-90' pour portrait mode(juste à l'opposé du comportement de l'iPad).
Est-ce une sorte de différence de conception dans iOS et Android? Ce qui pourrait être une solution pour ce problème?
Dans mes tests de l'iPad, l'iPhone et le Nexus 4 toutes les mêmes valeurs: 0 normal portrait, 90 pour la gauche paysage, -90 pour des aiguilles d'une montre paysage et 180 à l'envers portrait.
OriginalL'auteur Sayan | 2012-12-24
Vous devez vous connecter pour publier un commentaire.
Ok, c'est ce que j'ai fait. Je l'ai interrogé pour l'Agent de l'Utilisateur de l'information et de vérifier si l'appareil est sous Android. Si oui, changer les conditions de fenêtre.orientation pour à la fois en mode Portrait et Paysage.
CODE
Je suis d'accord, les derniers tests que j'ai réalisés ont montré maintenant iOS et Android sont de travail de la même façon pour la fenêtre.orientation
ne
window.orientation
toujours renvoyer une valeur différente pour android??OriginalL'auteur Sayan
Comme mentionné dans la deuxième réponse dans cette question, vous pouvez affecter deux auditeurs: une pour le changement d'orientation et une pour le redimensionnement de la largeur de l'écran/des valeurs de hauteur. de cette façon, vous n'avez pas à compter sur les valeurs de la rotation parce qu'ils sont contradictoires dans les différents dispositifs.
Ceci explique certains détails de la fenêtre.orientation valeurs sur différents appareils.
OriginalL'auteur Androidz