PointerEvent: свойство pointerType
Базовая линия Широко поддерживается *
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2020 года.
* Некоторые части этой функции могут иметь различный уровень поддержки.
Чтение-только свойство pointerType интерфейса PointerEvent указывает тип устройства (мышь, ручка или сенсорный экран), вызвавшего данное событие pointer.
Значение
Тип указателя события. Поддерживаемые значения — следующие строки:
"mouse"-
Событие было сгенерировано устройством мыши.
"pen"-
Событие было сгенерировано устройством пера или стилуса.
"touch"-
Событие было сгенерировано сенсорным устройством, например, пальцем.
Если тип устройства не может быть определен браузером, значение может быть пустой строкой (""). Если браузер поддерживает типы устройств указателя, отличные от перечисленных выше, значение должно быть префиксным для предотвращения конфликтов имён разных типов устройств.
Примеры
В этом примере показано использование значения свойства pointerType для вызова соответствующей функции обработки типа указателя.
targetElement.addEventListener(
"pointerdown",
(event) => {
// Call the appropriate pointer type handler
switch (event.pointerType) {
case "mouse":
process_pointer_mouse(event);
break;
case "pen":
process_pointer_pen(event);
break;
case "touch":
process_pointer_touch(event);
break;
default:
console.log(`pointerType ${event.pointerType} is not supported`);
}
},
false,
);
Спецификации
| Спецификация |
|---|
| Pointer Events # dom-pointerevent-pointertype |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
pointerType |
55 | 12 | 59 | 42 | 13 | 55 | 79 | 42 | 13 | 6.0 | 55 |
fractional_coordinates |
12–79ТолькоclientX, clientY, pageX и pageY являются дробными. |
Нет | Нет | Нет | Нет | ||||||
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/pointerType