Используя некоторый код из this question Я установил код для обнаружения, когда устройство Android будет повернуто. Он отлично подходит для планшета asus (4.0.3) и двух симуляторов (4.0.3 и 2.1), но для разжигающего огня (2.3.4) и дроида (2.3.4) он переключает ширину и высоту.Определить ориентацию с помощью javascript на устройствах Android.
Код:
<script type="text/javascript">
var supportsOrientationChange = "onorientationchange" in window,orientationEvent = supportsOrientationChange ? "orientationchange" : "resize";
window.addEventListener(orientationEvent, function() {
alert("The rotation is " + window.orientation + " and the resolution is " + screen.width + " x " + screen.height);
modRule();
}, false);
</script>
Выход из ASUS таблетки
Держа его в том, что выглядит как пейзаж:
Вращение 0 и разрешение 1280 х 800
Портрет
Вращение -90 и разрешение 800 х 1280
Выход из Kindle Fire
пейзаж
Вращение 90 и разрешение составляет 600 х 819
Портрет:
Вращение равно 0, а разрешение составляет 1024 х 395
Выход из DroidX
пейзаж:
Вращение 90 и разрешение 320x488
Портрет:
Вращение 0 и разрешение 569x239
Есть ли способ я могу
а) Сделать Javascript обнаружить, если он должен использовать высоту вместо ширины или ширины вместо высоты
OR
b) Заставить устройства сообщать правильные значения по их ширине и высоте?