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 button1
: Left button2
: 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
Feature | Edge | Firefox (Gecko) | Chrome | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | (Yes) | 1.0 (1.7 or earlier)[1] | 1.0 | 9.0 | 5.0 | 1.0 |
Feature | Edge | Firefox Mobile (Gecko) | Android | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | (Yes) | 1.0 (1) [1] | (Yes) | (Yes) | (Yes) | (Yes) |
[1] On mousemove
events, the which
property is incorrectly always set to 1
bug 1048294.