Задать вопрос

Как запустить JS только для десктопов?

Мне необходимо для настольных компьютеров запускать desktop.js, если это мобильное устройство, то не надо. Раньше я написал бы условие в ширину экрана, но сейчас столько разных устройств, что данный способ устарел. Погуглил я нашел десяток разных решений и даже не знаю что выбрать.
if ("desktop") { 
    document.write('<script type="text/javascript" src="desktop.js"></script>');  
}

Пока что нравится такое решение: jsfiddle.net/vEdzG/1
var isDesktop = (function() {
  return !('ontouchstart' in window) || !('onmsgesturechange' in window);
})();
window.isDesktop = isDesktop;
if( isDesktop ){ // то что только для настольников }
  • Вопрос задан
  • 3667 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
Пишут что так еще можно

$(document).ready(function(){
    if (/Android|BlackBerry|iPhone|iPad|iPod|webOS/i.test(navigator.userAgent) === false) {
        // not a mobile device
    }​
});
Ответ написан
deadbyelpy
@deadbyelpy
веб-шмеб
ну, нынче и на десктопах бывает тач поддержка.
вы бы уточнили зачем определять тип устройства, если ради обработки тач событий (более быстрый отклик), то приведенный выше код с jsfiddle определенно подходит.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы