Я видел подобные вопросы по этой проблеме, но они связаны с исходными приложениями. Я создаю веб-приложения для iPhone/iPad, которые работают в браузере (Safari).
Я задавался вопросом, существует ли способ предотвратить изменение ориентации в браузере, возможно, через некоторый метатег. Я знаю о метатеге области просмотра, который позволяет Вам указывать масштаб и возможности изменения масштаба, так изображенный, возможно, существует что-то подобное для ориентации.
Я сомневаюсь, что это возможно, но я думал, что просто вытолкаю вопрос на здесь для наблюдения.
Не представляется возможным предотвратить изменение ориентации, но вы можете обнаружить это с помощью кода, упомянутого выше.
Если вы хотите предотвратить изменение ориентации, это выглядит так, как будто вам нужно создать собственное приложение с использованием WebKit, которое аннулирует событие.
Вы можете обнаружить изменения ориентации с помощью onorientationchange
.
Javascript:
/*window.orientation returns a value that indicates whether iPhone is in portrait mode, landscape mode*/
window.onorientationchange = function() {
var orientation = window.orientation;
switch(orientation) {
case 0:
//Portrait mode
case 90:
// Landscape left
case -90:
//Landscape right
}
Написано в документе для iPhone. Здесь из документов iPhone .
почему вы не можете просто поместить event.preventDefault ()
внутрь функции?
Если ничего не работает, вы можете оказаться действительно хитрым и повернуть тело веб-сайта, чтобы противодействовать изменению ориентации ...