Я хочу условно изменить то, что пользователь видит на веб-сайте фотогалереи, который я собираюсь создать, на основе того, находится ли устройство, используемое для просмотра сайта, в портретном/вертикальном или альбомном/горизонтальном режиме/ориентации. Это возможно?
Могу ли я определить, находится ли устройство в портретном или ландшафтном режиме с помощью jquery?
Ответы (2)
Попробуйте обработчик событий orientationchange
, например:
$(window).bind("orientationchange", function(evt){
alert(evt.orientation);
});
Вот запись jQuery Mobile об обнаружении и запуске события orientationchange
.
Если вы просто меняете макет, рассмотрите вместо этого CSS Media Queries. .
В Chrome 7 и Firefox 3.6 есть deviceorientation
событие, которое вы можете слушать.
В ответ на ваш комментарий, простой способ обнаружения планшетов и телефонов - определить разрешение и размер экрана. Планшеты обычно имеют более высокое разрешение экрана, чем телефоны. Медиа-запросы могут определить эти факторы.
Что касается вариантов планшет-телефон
Если ваше устройство является телефоном, вы можете переключать CSS с помощью медиазапросов в зависимости от ориентации устройства.
Если устройство является планшетом, вы можете переключать CSS с помощью JS, используя переключение идентификатора/класса тела или заменяя таблицы стилей.