Live versions of the various files at github.com/patrickhlauke/touch.
See the presentation Getting touchy - everything you (n)ever wanted to know about touch and pointer events for some context and further information on the meaning of these tests and demos.
For a series of interesting results (different browsers, operating systems, assistive technologies), see my touch/pointer test results and, separately, pointer
/hover
/any-pointer
/any-hover
test results.
div
instead of buttondiv
with tabindex
force
/ webkitForce
/ pressure
preventDefault
preventDefault
all eventspreventDefault
on touchstart
preventDefault
on touchmove
preventDefault
on touchend
click
delay optimisations/heuristicsuser-scalable=no
minimum-scale=1,maximum-scale=1
width=device-width
touch-action:none
touch-action:none
- no meta viewporttouch-action:manipulation
touch-action:manipulation
- no meta viewportpointercancel
fires by default)button
div
div
with tabindex=0
div
with tabindex=0
and role=button
div
with onclick
attributediv
with onclick
attribute on ancestordiv
with addEventListener("click"...)
div
with addEventListener("click"...)
on ancestordiv
with cursor:pointer
div
with cursor:pointer
on ancestor<body>
<body>
- with iOS clickability hacks<html>
touch-action
pointerrawupdate
, getCoalescedEvents()
and getPredictedEvents()
pointermove
pointerrawupdate
pointermove
and getCoalescedEvents()
getPredictedEvents()
pointermove
, getCoalescedEvents()
, and getPredictedEvents()
click
delayfastclick.js
:hover
dropdownaria-haspopup
for IE10+touch-action:none
touch-action:none
touch-action:none
touch-action:none
pointermove
pointermove
and touch-action:none
pointermove
, touch-action:none
and isPrimary
checkHammer.js
)touch-action:none
preventDefault
on gesture for iOS/iPad (spoiler: doesn't work)TouchList
index for each Touch
radiusX
, radiusY
, rotationAngle
width
, height
force
, Pointer Events pressure
tiltX
/ tiltY
altitudeAngle
/ azimuthAngle
(PE3)click
as Pointer Event