Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. 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.initKeyboardEvent() method initializes the attributes of a keyboard event object. This method was introduced in draft of DOM Level 3 Events, but deprecated in newer draft. Gecko won't support this feature since implementing this method as experimental broke existing web apps (see Firefox bug 999645). Web applications should use constructor instead of this if it's available.
initKeyboardEvent(type, canBubble, cancelable,
view, key, location, ctrlKey,
altKey, shiftKey, metaKey)
typeThe type of keyboard event; browsers always set it to one of keydown, keypress, or keyup.
canBubble OptionalIndicates whether or not the event can bubble. Defaults to false.
cancelable OptionalIndicates whether or not the event can be canceled. Defaults to false.
view OptionalThe WindowProxy it is associated to. Defaults to null.
key OptionalThe value of the key attribute. Defaults to "".
location OptionalThe value of the location attribute. Defaults to 0.
ctrlKey OptionalIndicates whether the control key modifier is active. Defaults to false.
altKey OptionalIndicates whether the alt key modifier is active. Defaults to false.
shiftKey OptionalIndicates whether the shift key modifier is active. Defaults to false.
metaKey OptionalIndicates whether the meta key modifier is active. Defaults to false.
None (undefined).
| Specification |
|---|
| UI Events> # dom-keyboardevent-initkeyboardevent> |
The KeyboardEvent interface specification went through numerous draft versions, first under DOM Events Level 2 where it was dropped as no consensus arose, then under DOM Events Level 3. This led to the implementation of non-standard initialization methods, the early DOM Events Level 2 version, KeyboardEvent.initKeyEvent() by Gecko browsers and the early DOM Events Level 3 version, KeyboardEvent.initKeyboardEvent() by others. Both have been superseded by the modern usage of a constructor: KeyboardEvent().
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
initKeyboardEvent |
1 | 12 | 57 | ≤12.1 | 1.2 | 18 | 57 | ≤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/initKeyboardEvent