jquerymobile: определить ориентацию устройства

$(window).bind("orientationchange", function(e){
   var ow = (e.orientation=="portrait" ? "縦" : "横");
   alert("端末の向きは "+ow+" です。");
});

используя приведенный выше код, я мог определить, находится ли устройство в портретном или ландшафтном режиме. Но у меня такой вопрос, можно ли определить, в какую сторону в ландшафте (пейзаж справа/пейзаж слева) наклонено устройство, в том числе, если устройство перевернуто?

спасибо ребята за поддержку.


person Chinchan Zu    schedule 09.05.2012    source источник


Ответы (3)


$(window).bind('orientationchange', function() {
   alert(window.orientation);
});
  • 0 = Книжная ориентация. Это значение по умолчанию
  • -90 = Альбомная ориентация с экраном, повернутым по часовой стрелке
  • 90 = Альбомная ориентация с экраном, повернутым против часовой стрелки
  • 180 = книжная ориентация с перевернутым экраном
person Hupperware    schedule 30.05.2012
comment
это поддерживается всеми мобильными браузерами? - person Andres SK; 12.03.2015

Я бы принял во внимание этот пост:

http://www.matthewgifford.com/2011/12/22/a-misconception-about-window-orientation/

person moimikey    schedule 01.10.2012
comment
спасибо чувак, знаешь что? Я попробовал это сам пару дней назад с iphone и планшетом Android, и Android ведет себя совсем иначе, чем iOS, поэтому, когда я проверяю значения ориентации, они сильно отличаются (полная противоположность на iphone) ... ааа! - person Chinchan Zu; 02.10.2012
comment
Обновленная ссылка: notes.matthewgifford.com/ - person rvrvrv; 27.04.2017

Самый простой ответ: получить ориентацию (в любое время в вашем js-коде) через

window.orientation

Когда window.orientation возвращает 0 или 180, вы находитесь в портретном режиме, когда возвращает 90 или 270, вы находитесь в альбомном режиме.

person Sliq    schedule 11.07.2013