Как обнаружить планшет, мобильный, рабочий стол, телевидение, используя javascript
Я разрабатываю веб-приложение, где мне нужно обнаружить устройство из javascript. Может ли кто-нибудь сказать мне, что это лучший способ сделать это? Я нашел несколько решений от Google. Но никто не является полным доказательством. Я не хочу использовать обнаружение на стороне сервера, например WURFL.
Мое обновление
Я обнаруживаю устройство, сопоставляя запросы в формате CSS с помощью javascript. Для сопоставления медиа-запросов с использованием polyfill Paul Irish
https://github.com/paulirish/matchMedia.js/
Ответы
Ответ 1
Советую вам проверить http://wurfl.io/
Вкратце, если вы импортируете крошечный JS файл:
<script type='text/javascript' src="//wurfl.io/wurfl.js"></script>
у вас останется объект JSON, который выглядит следующим образом:
{
"complete_device_name":"Google Nexus 7",
"is_mobile":true,
"form_factor":"Tablet"
}
(предположим, что вы используете Nexus 7, конечно), и вы сможете делать такие вещи, как:
if(WURFL.form_factor == "Tablet"){
//dostuff();
}
Это то, что вы ищете.
Отказ от ответственности: я работаю в компании, предлагающей этот бесплатный сервис. Спасибо.
Ответ 2
Вы можете использовать:
1) JS: обнаружение с помощью агента пользователя
if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i))
Возьмите строки пользовательского агента здесь:
http://www.useragentstring.com/pages/useragentstring.php.
2) CSS: используйте отзывчивый дизайн
3) JS: Определите ширину экрана на screen.width