class dom::Event

sys::Obj
  dom::Event

@Js

Source

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.
alt

Bool alt()

Source

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

button

Int? button()

Source

Mouse button number pressed.

ctrl

Bool ctrl()

Source

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

dataTransfer

DataTransfer dataTransfer()

Source

The DataTransfer object for this event.

delta

Point? delta()

Source

Scroll amount for wheel events.

err

Err? err()

Source

Err instance if available for window.onerror.

fromNative

static Event fromNative(Obj event)

Source

Create an Event instance from a native JavaScript Event object.

get

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

Source

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

key

Key? key()

Source

Key instance for key pressed.

meta

Bool meta()

Source

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

Point pagePos()

Source

The mouse position of this event relative to page.

relatedTarget

Elem? relatedTarget()

Source

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

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

Source

Set an attribute to the given value.

shift

Bool shift()

Source

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

stash

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

Source

Meta-data for this event instance.

stop

Void stop()

Source

Stop further propagation of this event.

target

Elem target()

Source

The target to which the event was dispatched.

toStr

virtual override Str toStr()

Source

trap

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

Source

Get or set an attribute.

type

Str type()

Source

The type of this event.