Web/API/MouseEvent/which

From Get docs

Non-standard This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.


The MouseEvent.which read-only property indicates which button was pressed on the mouse to trigger the event. The standard alternatives to this property are MouseEvent.button and MouseEvent.buttons.

Syntax

var buttonPressed = instanceOfMouseEvent.which

Return value

A number representing a given button:

  • 0: No button
  • 1: Left button
  • 2: Middle button (if present)
  • 3: Right button

For a mouse configured for left-handed use, the button actions are reversed. In this case, the values are read from right to left.

Specification

This is not part of any specification.

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet

which

Non-standard'

Chrome

Full support 1

Edge

Full support 12

Firefox Full support 1

Notes'

Full support 1

Notes'

Notes' On mousemove events, the which property is incorrectly always set to 1.

IE

Full support 9

Opera

Full support 10.6

Safari

Full support 3.1

WebView Android

Full support Yes

Chrome Android

Full support Yes

Firefox Android Full support 4

Notes'

Full support 4

Notes'

Notes' On mousemove events, the which property is incorrectly always set to 1.

Opera Android

Full support 11

Safari iOS

Full support Yes

Samsung Internet Android

Full support Yes

Legend

Full support  
Full support
Non-standard. Expect poor cross-browser support.'
Non-standard. Expect poor cross-browser support.
See implementation notes.'
See implementation notes.


See also