Возможно ли получить разрешение планшета - PullRequest
0 голосов
/ 23 октября 2019

Я использую window.screen.height и window.screen.width.

Но это не дает мне правильное разрешение планшета. Пожалуйста, помогите мне.

1 Ответ

0 голосов
/ 23 октября 2019

Попробуйте использовать свой размер экрана / разрешение с window.devicePixelRatio:

var ratio = window.devicePixelRatio || 1;
var width = window.screen.width * ratio;
var height = window.screen.height * ratio;

Затем, чтобы определить, является ли это Asus Nexus 7, вам придется использовать внешний API или расширение, например ua-parser.jsДоступно на GitHub на https://github.com/faisalman/ua-parser-js. Вот что я придумал, используя их библиотеку:

var parser = new UAParser();
var result = parser.getResult();
if (result.device.vendor == "Asus" && result.device.model == "Nexus 7" && result.device.type == "tablet")
    // Code to redirect to mobile version website

Объединение двух:

<script src="ua-parser.min.js"></script>
<script>
   var ratio = window.devicePixelRatio || 1;
   var width = window.screen.width * ratio;
   var height = window.screen.height * ratio;
   var parser = new UAParser();
   var result = parser.getResult();
   if ((width < 700 && height < 900) || (result.device.vendor == "Asus" && result.device.model == "Nexus 7" && result.device.type == "tablet"))
      // Code to redirect to mobile version website
</script>
...