Applications détecter la largeur de rotation et écran
Question
Je suis en train de détecter la rotation de l'écran dans Webkit sur mon Motorola Droid 1. J'ai le code JavaScript suivant:
var supportsOrientationChange = "onorientationchange" in window,
orientationEvent = supportsOrientationChange ? "orientationchange" : "resize";
window.addEventListener(orientationEvent, function() {
alert("screen.width: " + screen.width + ", window.orientation: " + window.orientation);
}, false);
Le problème est le suivant: il alerte screen.width 569 lorsque le téléphone est mis en rotation en mode portrait, et 320 quand il est tourné dans le paysage. Cela ne aucun sens pour moi! Quelqu'un peut-il préciser?
Merci, Igor
La solution
Je parie que vous exécutez Android 2.2. Il y a un bug dans le rapport du navigateur de la largeur et de la hauteur. Voir screen.width + android et ne doit pas window.screen.width / correspondent de la hauteur à la largeur réelle de l'écran / hauteur? pour commencer.
Je voudrais avoir quelque chose de mieux à offrir que la solution de contournement de setTimeout()
dans ce premier poste, mais cela peut être le meilleur que vous pouvez faire. (J'aimerais tromper à ce sujet, donc si quelqu'un connaît une meilleure solution, s'il vous plaît part!)