Я работаю над веб-приложением, предназначенным для браузеров на настольных компьютерах, планшетах и смартфонах.
У веб-приложения есть световой блок, реализованный с помощью Colorbox с iframe
. Когда окно браузера изменяется или изменяется ориентация планшета/телефона, код Javascript запрашивает размеры окна, чтобы он мог изменять размеры некоторых элементов световой шкалы.
Проблема заключается в том, что все работает отлично на рабочем столе (Windows: IE, Firefox, Chrome, Mac: Safari), iPad и iPhone, но не на Android-смартфоне (HTC) и Android Emulator.
Android всегда возвращает разные значения для screen.width
, screen.height
, window.innerWidth
и window.innerHeight
, когда они запрашиваются из события изменения размера окна, которое срабатывает несколько раз.
Почему браузер Android возвращает столь широкую дисперсию значений и как я могу надежно определить ширину и высоту окна браузера?