type

Event

src @Js
class Event : Obj

Event models the DOM event object.

Common event types:

"mousedown"   Fired when a mouse button is pressed on an element.

"mouseup"     Fired when a mouse button is released over an element.

"click"       Fired when a mouse button is pressed and released on a
              single element.

"dblclick"    Fired when a mouse button is clicked twice on a single element.

"mousemove"   Fired when a mouse is moved while over an element.

"mouseover"   Fired when mouse is moved onto the element that has the
              listener attached or onto one of its children.

"mouseout"    Fired when mouse is moved off the element that has the
              listener attached or off one of its children.

"mouseenter"  Fired when mouse is moved over the element that has the
              listener attached. Similar to '"mouseover"', it differs in
              that it doesn't bubble and that it isn't sent when the mouse
              is moved from one of its descendants' physical space to its
              own physical space.

              With deep hierarchies, the amount of mouseenter events sent
              can be quite huge and cause significant performance problems.
              In such cases, it is better to listen for "mouseover" events.

"mouseleave"  Fired when mouse is moved off the element that has the
              listener attached. Similar to "mouseout", it differs in that
              it doesn't bubble and that it isn't sent until the pointer
              has moved from its physical space and the one of all its
              descendants.

              With deep hierarchies, the amount of mouseleave events sent
              can be quite huge and cause significant performance problems.
              In such cases, it is better to listen for "mouseout" events.

"contextmenu" Fired when the right button of the mouse is clicked (before
              the context menu is displayed), or when the context menu key
              is pressed (in which case the context menu is displayed at the
              bottom left of the focused element, unless the element is a
              tree, in which case the context menu is displayed at the
              bottom left of the current row).


"focus"       The focus event is fired when an element has received focus

"blur"        The blur event is fired when an element has lost focus.

"keydown"     Fired when a key is pressed down.

"keyup"       Fired when a key is released.

"keypress"    Fired when a key is pressed down and that key normally
              produces a character value (use "input" instead).

"input"       Fired synchronously when the value of an <input> or
              <textarea> element is changed.

"dragstart"   Fired on an element when a drag is started. The user is
              requesting to drag the element where the dragstart event is
              fired. During this event, a listener would set information
              such as the drag data and image to be associated with the drag.
              This event is not fired when dragging a file into the browser
              from the OS.

"dragenter"   Fired when the mouse enters an element while a drag is
              occurring. A listener for this event should indicate whether
              a drop is allowed over this location. If there are no listeners,
              or the listeners perform no operations, then a drop is not
              allowed by default. This is also the event to listen for in
              order to provide feedback that a drop is allowed, such as
              displaying a highlight or insertion marker.

"dragover"    This event is fired as the mouse is moving over an element
              when a drag is occurring. Much of the time, the operation that
              occurs during a listener will be the same as the "dragenter"
              event.

"dragleave"   This event is fired when the mouse leaves an element while a
              drag is occurring. Listeners should remove any highlighting
              or insertion markers used for drop feedback.

"drag"        This event is fired at the source of the drag and is the element
              where "dragstart" was fired during the drag operation.

"drop"        The drop event is fired on the element where the drop
              occurred at the end of the drag operation. A listener would
              be responsible for retrieving the data being dragged and
              inserting it at the drop location. This event will only fire
              if a drop is desired. It will not fire if the user cancelled
              the drag operation, for example by pressing the Escape key,
              or if the mouse button was released while the mouse was not
              over a valid drop target.

"dragend"     The source of the drag will receive a "dragend" event when the
              drag operation is complete, whether it was successful or not.
              This event is not fired when dragging a file into the browser
              from the OS.

fields

stash

Meta-data for this event instance.

methods

alt

Return true if the ALT key was pressed during the event.

button

Mouse button number pressed.

ctrl

Return true if the CTRL key was pressed during the event.

data

Data message used with HttpSocket.onReceive

dataTransfer

The DataTransfer object for this event.

delta

Scroll amount for wheel events.

err

Err instance if available for window.onerror.

fromNative

Create an Event instance from a native JavaScript Event object.

get

Get an attribute by name.

key

Key instance for key pressed.

keyChar

Character string for key event that represents text typed.

meta

Return true if the Meta key was pressed during the event.

pagePos

The mouse position of this event relative to page.

relatedTarget

Optional secondary target depending on event type

set

Set an attribute to the given value.

shift

Return true if the SHIFT key was pressed during the event.

stop

Stop further propagation of this event.

target

The target to which the event was dispatched.

toNative

Get the native JavaScript Event object

toStr
trap

Get or set an attribute.

type

The type of this event.

Slot Details

alt

src Bool alt()

Return true if the ALT key was pressed during the event.

button

src Int? button()

Mouse button number pressed.

ctrl

src Bool ctrl()

Return true if the CTRL key was pressed during the event.

data

src Obj data()

Data message used with HttpSocket.onReceive

dataTransfer

src DataTransfer dataTransfer()

The DataTransfer object for this event.

delta

src Point? delta()

Scroll amount for wheel events.

err

src Err? err()

Err instance if available for window.onerror.

fromNative

src @Js
static Event fromNative(Obj event)

Create an Event instance from a native JavaScript Event object.

get

src @Operator
Obj? get(Str name, Obj? def := null)

Get an attribute by name. If not found return the specified default value.

key

src Key? key()

Key instance for key pressed.

keyChar

src Str? keyChar()

Character string for key event that represents text typed. For example Shift + Key.b would return "B".

meta

src Bool meta()

Return true if the Meta key was pressed during the event. On Macs this maps to "command" key. On Windows this maps to "Windows" key.

pagePos

src Point pagePos()

The mouse position of this event relative to page.

relatedTarget

src Elem? relatedTarget()

Optional secondary target depending on event type:

event     target                relatedTarget
--------  --------------------  -----------------------------
blur      elem losing focus     elem receiving focus (if any)
focus     elem receiving focus  elem losing focus (if any)
focusin   elem receiving focus  elem losing focus (if any)
focusout  elem losing focus     elem receiving focus (if any)

set

src @Operator
Void set(Str name, Obj? val)

Set an attribute to the given value.

shift

src Bool shift()

Return true if the SHIFT key was pressed during the event.

stash

src Str:Obj? stash := [Str:Obj?][:]

Meta-data for this event instance.

stop

src Void stop()

Stop further propagation of this event.

target

src Elem target()

The target to which the event was dispatched.

toNative

src @Js
Obj toNative()

Get the native JavaScript Event object

toStr

src virtual override Str toStr()

trap

src virtual override Obj? trap(Str name, Obj?[]? args := null)

Get or set an attribute.

type

src Str type()

The type of this event.