pointerevents
Unified mouse/pen/touch input handling via the Pointer Events API.
Import: @rtorcato/browser-common/pointerevents
๐ MDN: Pointer Events ยท ๐ caniuse: pointer
Browser supportโ
| API | Chrome | Edge | Firefox | Safari | iOS Safari | Baseline |
|---|---|---|---|---|---|---|
PointerEvent | โ 55+ | โ 12+ | โ 59+ | โ 13+ | โ 13+ | Widely available |
โ
supported ยท โ partial ยท โ not supported ยท [n] see note. Generated from MDN browser-compat-data and web-features. caniuse: PointerEvent
Exampleโ
import { isPointerEventsAvailable, onPointer, getPointerType, isPrimaryPointer } from '@rtorcato/browser-common/pointerevents'
if (isPointerEventsAvailable()) {
const off = onPointer(canvas, 'pointerdown', (e) => {
if (getPointerType(e) === 'pen' && isPrimaryPointer(e)) draw(e.clientX, e.clientY)
})
off()
}
Exportsโ
isPointerEventsAvailable()โ feature checkonPointer(element, type, handler, options?)โ subscribes to a pointer event, returns an unsubscribe functiongetPointerType(event)โ input device type:'mouse' | 'pen' | 'touch' | ''isPrimaryPointer(event)โ true if the event is the primary pointer of its type
See the API reference for full signatures.