This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The KeyboardLayoutMap
interface of the the Keyboard API is a map-like object with functions for retrieving the string associated with specific physical keys. A list of valid keys is found in the UI Events KeyboardEvent code Values specification.
KeyboardLayoutMap.entries
Read only
[key, value]
pairs, in the same order as that provided by a for...in
loop (the difference being that a for-in
loop enumerates properties in the prototype chain as well). KeyboardLayoutMap.keys
Read only
KeyboardLayoutMap.size
Read only
KeyboardLayoutMap
object.KeyboardLayoutMap.values
Read only
KeyboardLayoutMap
object.KeyboardLayoutMap.forEach()
Read only
KeyboardLayoutMap
.KeyboardLayoutMap.get()
KeyboardLayoutMap
object.KeyboardLayoutMap.has()
KeyboardLayoutMap
object has an element with the specified key.The following example demonstrates how to get the location- or layout-specific string associated with the key that corresponds to the 'W' key on an English QWERTY keyboard.
var keyboard = navigator.keyboard; keyboard.getLayoutMap() .then(keyboardLayoutMap => { var upKey = keyboardLayoutMap.get('KeyW'); window.alert('Press ' + upKey + ' to move up.'); }
Specification | Status | Comment |
---|---|---|
Unknown The definition of 'KeyboardLayoutMap' in that specification. | Unknown | Initial definition. |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | 69 | No | No | No | 55 | No |
entries
|
69 | No | No | No | 56 | No |
forEach
|
69 | No | No | No | 56 | No |
get
|
69 | No | No | No | 56 | No |
has
|
69 | No | No | No | 56 | No |
keys
|
69 | No | No | No | 56 | No |
size
|
69 | No | No | No | 56 | No |
values
|
69 | No | No | No | 56 | No |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | No | No | No | No | No | No | No |
entries
|
No | No | No | No | 56 | No | No |
forEach
|
No | No | No | No | 56 | No | No |
get
|
No | No | No | No | 56 | No | No |
has
|
No | No | No | No | 56 | No | No |
keys
|
No | No | No | No | 56 | No | No |
size
|
No | No | No | No | No | No | No |
values
|
No | No | No | No | 56 | No | No |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/KeyboardLayoutMap