Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The firesTouchEvents read-only property of the InputDeviceCapabilities interface returns a boolean value that indicates whether the device dispatches touch events.
You can use this property to detect mouse events that represent an action that may already have been handled by touch event handlers. This doesn't necessarily mean the device is a touch screen. For example, stylus and mouse devices typically generate touch events on mobile browsers.
A Boolean
myButton.addEventListener("mousedown", (e) => {
if (!e.sourceCapabilities.firesTouchEvents) myButton.classList.add("pressed");
});
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
firesTouchEvents |
47 | 79 | No | 34 | No | 47 | No | 34 | No | 5.0 | 47 | No |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/InputDeviceCapabilities/firesTouchEvents