2013-06-26 3 views
5

Мне было интересно, можно ли определить плотность экрана с веб-страницы, используя javascript и/или некоторую проверку сервера на основе заголовков http на PHP. Моя цель - проверить, имеет ли пользователь доступ к сайту с планшета, телефона или компьютера, чтобы настроить некоторые размеры кнопок - воображает на холсте html5. Точные значения пикселей могут привести к слишком маленьким или слишком большим кнопкам в зависимости от плотности экрана ...определить плотность экрана с помощью javascript на мобильных устройствах?

+0

Это действительно работа для медиа-запросов. Вы ищете «отношение пикселов устройства», но кроме этого нет никакого способа убедиться в фактической физической геометрии клиентского устройства. – Pointy

+0

В качестве альтернативы, вы можете просто проверить, есть ли это планшет, мобильный телефон или обычный браузер на колени/столе, проверяя агент пользователя. Практически каждое мобильное устройство в настоящее время имеет аналогичную плотность пикселей, поэтому большинство людей, которых я знаю, не проверяют разрешение экрана таким точным способом, как вы просите. – Renan

ответ

10

Я думаю, что большинство мобильных браузеров поддерживают window.devicePixelRatio.

+0

Да, window.devicePixelRatio сделает трюк. Спасибо! – chokito76

1

Большинство browsers supportdevicepixelratio за исключением версий Internet Explorer 8 до 10. К счастью, по состоянию на 12 января 2016 года все эти версии были officially deprecated и больше не будут поддерживаться Microsoft с обновлениями безопасности или технической поддержкой.