The clientX read-only property of the MouseEvent interface provides the horizontal coordinate within the application's client area at which the event occurred (as opposed to the coordinates within the page). For example, clicking in the top-left corner of the client area will always result in a mouse event with a clientX value of 0, regardless of whether the page is scrolled horizontally. Originally, this property was defined as a long integer. The CSSOM View Module redefined it as a double float. See the Browser compatibility section for details.

Syntax

var x = instanceOfMouseEvent.clientX

Return value

A number

Example

<!DOCTYPE html> 
<html>
  <head>
    <title>clientX/clientY example</title>

    <script>
      function showCoords(evt){
        alert(
          "clientX value: " + evt.clientX + "\n" +
          "clientY value: " + evt.clientY + "\n"
        );
      }
    </script>
  </head>
  <body onmousedown="showCoords(event)">
    <p>To display the mouse coordinates click anywhere on the page.</p>
  </body>
</html>

Specifications

Specification Status Comment
CSS Object Model (CSSOM) View Module
The definition of 'clientX' in that specification.
Working Draft Redefines MouseEvent from long to double
Document Object Model (DOM) Level 3 Events Specification
The definition of 'MouseEvent.clientX' in that specification.
Obsolete No change from Document Object Model (DOM) Level 2 Events Specification.
Document Object Model (DOM) Level 2 Events Specification
The definition of 'MouseEvent.clientX' in that specification.
Obsolete Initial definition.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support Yes Yes Yes6 Yes Yes
Value type changed from long to double56 ? ? ? ? ?
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support Yes Yes Yes Yes Yes Yes ?
Value type changed from long to double5656 ? ? ? ? ?

See also

Document Tags and Contributors

Last updated by: fscholz,