This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The KeyboardEvent.shiftKey read-only property is a boolean value that indicates if the shift key was pressed (true) or not (false) when the event occurred.
The pressing of the shift key may change the key of the event too. For example, pressing B generates key: "b", while simultaneously pressing Shift generates key: "B".
A boolean value.
<p> Press any character key, with or without holding down the SHIFT key.<br /> You can also use the SHIFT key together with the ALT key. </p> <pre id="output"></pre>
const output = document.getElementById("output");
function showChar(e) {
output.textContent = `Key KeyDown: "${e.key}"
SHIFT key KeyDown: ${e.shiftKey}
`;
}
document.addEventListener("keydown", showChar);
| Specification |
|---|
| UI Events> # dom-keyboardevent-shiftkey> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
shiftKey |
1 | 12 | 1.5 | ≤12.1 | 1.2 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 | 1 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/shiftKey