KeyboardEvent extension type

KeyboardEvent objects describe a user interaction with the keyboard; each event describes a single interaction between the user and a key (or combination of a key with modifier keys) on the keyboard. The event type (Element.keydown_event, Element.keypress_event, or Element.keyup_event) identifies what kind of keyboard activity occurred.

Note: KeyboardEvent events just indicate what interaction the user had with a key on the keyboard at a low level, providing no contextual meaning to that interaction. When you need to handle text input, use the Element.input_event event instead. Keyboard events may not be fired if the user is using an alternate means of entering text, such as a handwriting system on a tablet or graphics tablet.


API documentation sourced from MDN Web Docs.

on
Implemented types
Available extensions

Constructors

KeyboardEvent(String type, [KeyboardEventInit eventInitDict])
factory

Properties

altKey bool
The KeyboardEvent.altKey read-only property is a boolean value that indicates if the alt key (Option or on macOS) was pressed (true) or not (false) when the event occurred.
no setter
bubbles bool
The bubbles read-only property of the Event interface indicates whether the event bubbles up through the DOM tree or not.
no setterinherited
cancelable bool
The cancelable read-only property of the Event interface indicates whether the event can be canceled, and therefore prevented as if the event never happened.
no setterinherited
cancelBubble bool
The cancelBubble property of the Event interface is deprecated. Use Event.stopPropagation instead. Setting its value to true before returning from an event handler prevents propagation of the event. In later implementations, setting this to false does nothing. See Browser compatibility for details.
getter/setter pairinherited
charCode int
The charCode read-only property of the KeyboardEvent interface returns the Unicode value of a character key pressed during a Element.keypress_event event.
no setter
code String
The KeyboardEvent.code property represents a physical key on the keyboard (as opposed to the character generated by pressing the key). In other words, this property returns a value that isn't altered by keyboard layout or the state of the modifier keys.
no setter
composed bool
The read-only composed property of the Event interface returns a boolean value which indicates whether or not the event will propagate across the shadow DOM boundary into the standard DOM.
no setterinherited
ctrlKey bool
The KeyboardEvent.ctrlKey read-only property returns a boolean value that indicates if the control key was pressed (true) or not (false) when the event occurred.
no setter
currentTarget EventTarget?
The currentTarget read-only property of the Event interface identifies the element to which the event handler has been attached.
no setterinherited
defaultPrevented bool
The defaultPrevented read-only property of the Event interface returns a boolean value indicating whether or not the call to Event.preventDefault canceled the event.
no setterinherited
detail int
The UIEvent.detail read-only property, when non-zero, provides the current (or next, depending on the event) click count.
no setterinherited
eventPhase int
The eventPhase read-only property of the Event interface indicates which phase of the event flow is currently being evaluated.
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
isComposing bool
The KeyboardEvent.isComposing read-only property returns a boolean value indicating if the event is fired within a composition session, i.e. after Element.compositionstart_event and before Element.compositionend_event.
no setter
isTrusted bool
The isTrusted read-only property of the Event interface is a boolean value that is true when the event was generated by the user agent (including via user actions and programmatic methods such as HTMLElement.focus), and false when the event was dispatched via EventTarget.dispatchEvent. The only exception is the click event, which initializes the isTrusted property to false in user agents.
no setterinherited
key String
The KeyboardEvent interface's key read-only property returns the value of the key pressed by the user, taking into consideration the state of modifier keys such as Shift as well as the keyboard locale and layout.
no setter
keyCode int
The deprecated KeyboardEvent.keyCode read-only property represents a system and implementation dependent numerical code identifying the unmodified value of the pressed key.
no setter
location int
The KeyboardEvent.location read-only property returns an unsigned long representing the location of the key on the keyboard or other input device.
no setter
metaKey bool
The KeyboardEvent.metaKey read-only property returning a boolean value that indicates if the Meta key was pressed (true) or not (false) when the event occurred. Some operating systems may intercept the key so it is never detected.
no setter
repeat bool
The repeat read-only property of the KeyboardEvent interface returns a boolean value that is true if the given key is being held down such that it is automatically repeating.
no setter
returnValue bool
The Event property returnValue indicates whether the default action for this event has been prevented or not.
getter/setter pairinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
shiftKey bool
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.
no setter
srcElement EventTarget?
The deprecated Event.srcElement is an alias for the Event.target property. Use Event.target instead.
no setterinherited
target EventTarget?
The read-only target property of the Event interface is a reference to the object onto which the event was dispatched. It is different from Event.currentTarget when the event handler is called during the bubbling or capturing phase of the event.
no setterinherited
timeStamp double
The timeStamp read-only property of the Event interface returns the time (in milliseconds) at which the event was created.
no setterinherited
type String
The type read-only property of the Event interface returns a string containing the event's type. It is set when the event is constructed and is the name commonly used to refer to the specific event, such as click, load, or error.
no setterinherited
view Window?
The UIEvent.view read-only property returns the object from which the event was generated. In browsers, this is the Window object the event happened in.
no setterinherited
which int
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.
no setterinherited

Methods

composedPath() JSArray<EventTarget>
The composedPath() method of the Event interface returns the event's path which is an array of the objects on which listeners will be invoked. This does not include nodes in shadow trees if the shadow root was created with its ShadowRoot.mode closed.
inherited
getModifierState(String keyArg) bool
The KeyboardEvent.getModifierState() method returns the current state of the specified modifier key: true if the modifier is active (that is the modifier key is pressed or locked), otherwise, false.
initEvent(String type, [bool bubbles, bool cancelable]) → void
The Event.initEvent() method is used to initialize the value of an event created using Document.createEvent.
inherited
initKeyboardEvent(String typeArg, [bool bubblesArg, bool cancelableArg, Window? viewArg, String keyArg, int locationArg, bool ctrlKey, bool altKey, bool shiftKey, bool metaKey]) → void
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.
initUIEvent(String typeArg, [bool bubblesArg, bool cancelableArg, Window? viewArg, int detailArg]) → void
The UIEvent.initUIEvent() method initializes a UI event once it's been created.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
preventDefault() → void
The preventDefault() method of the Event interface tells the that if the event does not get explicitly handled, its default action should not be taken as it normally would be.
inherited
stopImmediatePropagation() → void
The stopImmediatePropagation() method of the Event interface prevents other listeners of the same event from being called.
inherited
stopPropagation() → void
The stopPropagation() method of the Event interface prevents further propagation of the current event in the capturing and bubbling phases. It does not, however, prevent any default behaviors from occurring; for instance, clicks on links are still processed. If you want to stop those behaviors, see the Event.preventDefault method. It also does not prevent propagation to other event-handlers of the current element. If you want to stop those, see Event.stopImmediatePropagation.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited