What is the difference between touches, targetTouches and changedTouches?
touches lists every touch on the entire screen, targetTouches lists only the touches that started inside the observed element, and changedTouches lists only the touches that changed state in that specific event; all three can have different lengths at the same instant.
What is a ghost touch?
It is a contact point reported by the panel without the person actually touching the screen, usually caused by electrical interference, moisture on the surface, or a momentary glitch in the touchscreen controller, and it shows up on this page as an extra touch with no visible explanation.
Why did touch on older sites feel slow to respond?
Because mobile browsers reserved about 300ms after a tap to check whether a second zoom tap was coming before firing the click; the CSS touch-action property lets a page tell the browser it already handles gestures on its own, which removes that wait.
How do I know how many simultaneous touches my device actually supports?
navigator.maxTouchPoints reports that limit straight from the panel hardware; this page displays that number, and it is usually 10 on modern smartphones, but it can be much lower on simpler panels or older resistive screens.