Deprecated
This feature has been removed from the Web standards. Though some browsers may still support it, it is in the process of being dropped. Avoid using it and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.
The KeyboardEvent.which read-only property returns the numeric keyCode of the key pressed, or the character code (charCode) for an alphanumeric key pressed.
Syntax
var keyResult = event.which;
keyResultcontains the numeric code for a particular key pressed, depending on whether an alphanumeric or non-alphanumeric key was pressed. Please seeKeyboardEvent.charCodeandKeyboardEvent.keyCodefor more details.
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 | Status | Comment |
|---|---|---|
| Document Object Model (DOM) Level 3 Events Specification The definition of 'KeyboardEvent.which' in that specification. |
Working Draft | Initial definition; specified as deprecated |
Browser compatibility
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| Basic support | 4 | (Yes) | 2 [1] | 9 | 10.10 | 5.1 |
| Feature | Android | Chrome for Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | (Yes) | (Yes)[1] | 10 | ? | 5.1 |
[1] Gecko implements this property on the UIEvent interface.
See also
KeyboardEvent, the interface this property belongs too.
Document Tags and Contributors
Tags:
Contributors to this page:
julienw,
libbymc,
jwhitlock,
fscholz,
cvrebert,
teoli,
SphinxKnight,
kscarfone,
Kartik_Chadha,
Sheppy,
Huan,
Matej Lednar,
Nickolay,
Jabez
Last updated by:
julienw,