Я пытаюсь понять, как получить физические размеры экрана устройства с помощью Javascript. Пока что я пришел к выводу, что в настоящее время это невозможно, но я надеюсь, что кто-нибудь сможет доказать, что я не прав :).
До сих пор я пытался получить эту информацию, находя DPI устройства, но, похоже, здесь невозможно получить правильное значение, так как все устройства, которые я тестировал (, некоторые устройства HDPI и XHDPI Android, iPhone4S, iPad 2 и iPad 3 )показывают 96 точек на дюйм.
Первый метод получения DPI, который я пробовал, вы можете найти повсюду в Интернете :создать div
с шириной CSS 1in
, получить его clientWidth
или offsetWidth
и вот ваш DPI. Не работает, все устройства показывают 96.
Второй метод заключался в использовании медиа-запроса разрешения , что-то вроде:
for (var i=90; i < 400; i++) {
if (matchMedia('(resolution: ' + i + 'dpi)').matches) {
return i;
}
}
Я думал, что это разумное решение, но, к сожалению, оно также возвращает 96.
Осталось что-нибудь, что я могу попробовать?