Touch: clientX property
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
The Touch.clientX
read-only property returns the X coordinate of the touch
point relative to the viewport, not including any scroll offset.
Value
A double
floating point value representing the X coordinate of the touch point
relative to the viewport, not including any scroll offset.
Examples
This example illustrates using the Touch
object's
Touch.clientX
and Touch.clientY
properties. The
Touch.clientX
property is the horizontal coordinate of a touch point
relative to the browser's viewport excluding any scroll offset. The
Touch.clientY
property is the vertical coordinate of the touch point
relative to the browser's viewport excluding any scroll offset.
In this example, we assume the user initiates a touch on an element with an id of
source
, moves within the element or out of the element and then releases
contact with the surface. When the touchend
event handler is invoked, the changes in the Touch.clientX
and
Touch.clientY
coordinates, from the starting touch point to the ending
touch point, are calculated.
// Register touchstart and touchend listeners for element 'source'
const src = document.getElementById("source");
let clientX;
let clientY;
src.addEventListener(
"touchstart",
(e) => {
// Cache the client X/Y coordinates
clientX = e.touches[0].clientX;
clientY = e.touches[0].clientY;
},
false,
);
src.addEventListener(
"touchend",
(e) => {
let deltaX;
let deltaY;
// Compute the change in X and Y coordinates.
// The first touch point in the changedTouches
// list is the touch point that was just removed from the surface.
deltaX = e.changedTouches[0].clientX - clientX;
deltaY = e.changedTouches[0].clientY - clientY;
// Process the data…
},
false,
);
Specifications
Specification |
---|
Touch Events # dom-touch-clientx |
Browser compatibility
BCD tables only load in the browser