Как проверить сенсорный экран (не сенсорный)?

Я разрабатываю сайт, который реализует определенные функции для сенсорных устройств. Я нацелен на смартфоны, планшеты и фактически все, что использует сенсорный экран в качестве основного входа.

Для этого я использую Modernizr.touch от Modernizr.

Однако это возвращает true на хроме с компьютерами, на которых установлен графический планшет Wacom. (Подтверждено с Wacom Intuos 5). Очевидно, что основным устройством ввода на этих компьютерах является клавиатура и мышь, а не тачскрин. Это создает ложноположительный результат, так как я хочу предоставить настольный UX для этих компьютеров, а не UX с сенсорным экраном.

Есть ли способ проверить «возможности сенсорного экрана», а не «возможности сенсорного экрана»? Или любой другой творческий метод, чтобы обойти это и избежать ложных срабатываний?


person OpherV    schedule 13.03.2013    source источник
comment
Я искал ответ на этот вопрос несколько месяцев. К сожалению, я не думаю, что таким образом можно обнаружить оборудование.   -  person BenM    schedule 13.03.2013
comment


Ответы (1)


Простой пользовательский тест «Нажмите или коснитесь этого поля» должен сказать вам, использовали ли они мышь или какое-либо сенсорное устройство для выполнения действия. Поскольку вы можете получить пользовательский агент устройств, для планшетов и телефонов легко предположить с помощью двух данных, что они поддерживают сенсорное управление... поэтому вы можете представить «тест» только в том случае, если обнаружите пользователя настольного компьютера, который также дал положительный результат. для сенсорного устройства (выборка должна быть меньше, чем тестирование всех, что может раздражать пользователей). Конечно, я также каким-то образом запомню выбор пользователя/результат теста, чтобы вам не пришлось их снова прослушивать.

person SnakeDoc    schedule 13.03.2013
comment
Я ценю вклад (без каламбура) :) Я бы предпочел не просить пользователей о чем-то столь навязчивом, как Нажмите эту кнопку, чтобы я мог представить вам правильное меню. Я ищу способ добиться этого автоматически. Поддержание активного списка пользовательских агентов и возможностей, а затем прикрепление его к профилям пользователей кажется непропорциональным и неэлегантным решением этой проблемы. - person OpherV; 13.03.2013
comment
Ну, технически существует проект под названием WURFL, который сопоставляет пользовательские агенты с возможностями устройства (он используется для обнаружения устройств на стороне сервера). Я не знаю о его осведомленности о сенсорных событиях (он используется в основном для обслуживания WML и XHTML-MP) - person Jason Sperske; 13.03.2013
comment
Почему минус? Глядя на строку User-Agent и решая что-то, на самом деле довольно распространенная и стандартная практика. Именно так большинство мобильных сайтов определяют, какой сайт показывать гостю. Без того, чтобы пользователь конкретно сообщал вам, какое устройство у него есть, я думаю, что это следующая лучшая вещь. - person SnakeDoc; 13.03.2013