This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The UIEvent.sourceCapabilities read-only property returns an instance of the InputDeviceCapabilities interface which provides information about the physical device responsible for generating a touch event. If no input device was responsible for the event, it returns null.
When a single user interaction with an input device generates a series of different input events, the sourceCapabilities property for all of them will point to the same instance of InputDeviceCapabilities. For example, when a user lifts their finger off of a touchscreen, several UIEvents may be generated including touchend, mousedown, click, and focus. All of these events must have the same sourceCapabilities representing the touchscreen.
A device is considered "responsible" for an event only when that interaction is part of the abstraction provided by the web platform. For example, many user agents allow a window to be resized with a mouse or a keyboard, but this detail is not exposed to the web platform in any way, and so the sourceCapabilities of a resize event will typically be null.
Syntax
var iDC = event.sourceCapabilities
Value
An instance of InputDeviceCapabilities.
Specifications
| Specification | Status | Comment |
|---|---|---|
| InputDeviceCapabilities The definition of 'sourceCapabilities' in that specification. |
Draft | Initial definition. |
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
sourceCapabilities | Chrome Full support 47 | Edge Full support ≤79 | Firefox ? | IE ? | Opera Full support Yes | Safari ? | WebView Android Full support 47 | Chrome Android Full support 47 | Firefox Android ? | Opera Android Full support Yes | Safari iOS ? | Samsung Internet Android Full support 5.0 |
Legend
- Full support
- Full support
- Compatibility unknown
- Compatibility unknown
- Experimental. Expect behavior to change in the future.
- Experimental. Expect behavior to change in the future.
