UIEvent.which
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 UIEvent.which
read-only property of the UIEvent
interface returns a number that indicates which button was pressed on the mouse, or the numeric keyCode
or the character code (charCode
) of the key pressed on the keyboard.
Syntax
var result = event.which;
Return value
Return value for KeyboardEvent
event.which
contains the numeric code for a particular key pressed, depending on whether an alphanumeric or non-alphanumeric key was pressed. Please see deprecated KeyboardEvent.charCode
and KeyboardEvent.keyCode
for more details.
Note: Consider KeyboardEvent.key
or KeyboardEvent.code
for new code.
Return value for MouseEvent
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.
Note: Consider MouseEvent.button
for new code.
Example
<html> <head> <title>charCode/keyCode/which example</title> <script type="text/javascript"> function showKeyPress(evt) { alert("onkeypress handler: \n" + "keyCode property: " + evt.keyCode + "\n" + "which property: " + evt.which + "\n" + "charCode property: " + evt.charCode + "\n" + "Character Key Pressed: " + String.fromCharCode(evt.charCode) + "\n" ); } function keyDown(evt) { alert("onkeydown handler: \n" + "keyCode property: " + evt.keyCode + "\n" + "which property: " + evt.which + "\n" ); } </script> </head> <body onkeypress="showKeyPress(event);" onkeydown="keyDown(event);" > <p>Please press any key.</p> </body> </html>
Specifications
Specification |
---|
UI Events # dom-uievent-which |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
which |
1 |
79
12-79
|
1
On
mousemove events, the which property is incorrectly always set to 1 . |
9
|
15
≤12.1-15
|
≤4 |
≤37 |
18 |
4
On
mousemove events, the which property is incorrectly always set to 1 . |
14
≤12.1-14
|
≤3 |
1.0 |
See also
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/UIEvent/which