iPhone Safari screen.availHeight и панель состояния / панель инструментов / адресная строка

Я пытаюсь получить доступный размер экрана в iPhone Safari, чтобы уменьшить контейнер до высоты экрана, за вычетом строки состояния и панели инструментов.

Поскольку iOS всегда возвращает размеры экрана, как если бы телефон был в книжной ориентации, я использую screen.availWidth для расчета высоты в альбомной ориентации. Возвращаются следующие размеры:

screen.width; //320
screen.availWidth; //300

Разница в 20 пикселей учитывает верхнюю строку состояния на телефоне, но не учитывает панель кнопок (панель инструментов) в нижней части экрана.

Есть ли какое-либо свойство, которое я могу использовать, чтобы вернуть 268 пикселей?

Я бы просто сделал (screen.availWidth - 32), но есть шанс, что пользователь добавит сайт в качестве закладки на рабочем столе, и в этом случае этой панели не будет, и значение 300px будет правильным.

9
задан howard10 9 May 2012 в 07:37
поделиться