# class MouseEvent

#### package js.html

#### extends UIEvent › Event

Available on HTML5

The `MouseEvent` interface represents events that occur due to the user interacting with a pointing device (such as a mouse). Common events using this interface include `click`, `dblclick`, `mouseup`, `mousedown`.

Documentation MouseEvent by Mozilla Contributors, licensed under CC-BY-SA 2.5.

See:

https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent

### Constructor

###

`new (typeArg:String, ?mouseEventInitDict:MouseEventInit)`

Throws:

`null` | DOMError

### Variables

###

`read onlyaltKey:Bool`

Returns `true` if the alt key was down when the mouse event was fired.

###

`read onlybutton:Int`

The button number that was pressed when the mouse event was fired.

###

`read onlybuttons:Int`

The buttons being pressed when the mouse event was fired

###

`read onlyclientX:Int`

The X coordinate of the mouse pointer in local (DOM content) coordinates.

###

`read onlyclientY:Int`

The Y coordinate of the mouse pointer in local (DOM content) coordinates.

###

`read onlyctrlKey:Bool`

Returns `true` if the control key was down when the mouse event was fired.

###

`read onlymetaKey:Bool`

Returns `true` if the meta key was down when the mouse event was fired.

###

`read onlymovementX:Int`

The X coordinate of the mouse pointer relative to the position of the last `mousemove` event.

###

`read onlymovementY:Int`

The Y coordinate of the mouse pointer relative to the position of the last `mousemove` event.

###

`read onlyoffsetX:Int`

The X coordinate of the mouse pointer relative to the position of the padding edge of the target node.

###

`read onlyoffsetY:Int`

The Y coordinate of the mouse pointer relative to the position of the padding edge of the target node.

###

`read onlyregion:String`

Returns the id of the hit region affected by the event. If no hit region is affected, `null` is returned.

###

`read onlyrelatedTarget:EventTarget`

The secondary target for the event, if there is one.

###

`read onlyscreenX:Int`

The X coordinate of the mouse pointer in global (screen) coordinates.

###

`read onlyscreenY:Int`

The Y coordinate of the mouse pointer in global (screen) coordinates.

###

`read onlyshiftKey:Bool`

Returns `true` if the shift key was down when the mouse event was fired.

### Methods

###

`getModifierState (keyArg:String):Bool`

Returns the current state of the specified modifier key. See the `KeyboardEvent.getModifierState`() for details.

###

`initMouseEvent (typeArg:String, canBubbleArg:Bool, cancelableArg:Bool, viewArg:Window, detailArg:Int, screenXArg:Int, screenYArg:Int, clientXArg:Int, clientYArg:Int, ctrlKeyArg:Bool, altKeyArg:Bool, shiftKeyArg:Bool, metaKeyArg:Bool, buttonArg:Int, relatedTargetArg:EventTarget):Void`

Initializes the value of a `MouseEvent` created. If the event has already being dispatched, this method does nothing.

###

`initNSMouseEvent (typeArg:String, canBubbleArg:Bool, cancelableArg:Bool, viewArg:Window, detailArg:Int, screenXArg:Int, screenYArg:Int, clientXArg:Int, clientYArg:Int, ctrlKeyArg:Bool, altKeyArg:Bool, shiftKeyArg:Bool, metaKeyArg:Bool, buttonArg:Int, relatedTargetArg:EventTarget, pressure:Float, inputSourceArg:Int):Void`

### Inherited Variables

#### Defined by UIEvent

###

`cancelBubble:Bool`

Is a `Boolean` indicating whether the bubbling of the event has been canceled or not.

###

`read onlydetail:Int`

Returns a `long` with details about the event, depending on the event type.

###

`read onlyisChar:Bool`

Returns a `Boolean` indicating whether the event produced a key character or not.

###

`read onlylayerX:Int`

Returns the horizontal coordinate of the event relative to the current layer.

###

`read onlylayerY:Int`

Returns the vertical coordinate of the event relative to the current layer.

###

`read onlypageX:Int`

Returns the horizontal coordinate of the event relative to the whole document.

###

`read onlypageY:Int`

Returns the vertical coordinate of the event relative to the whole document.

###

`read onlyrangeOffset:Int`

###

`read onlyrangeParent:Node`

###

`read onlyview:Window`

Returns a `WindowProxy` that contains the view that generated the event.

###

`read onlywhich:Int`

Returns the numeric `keyCode` of the key pressed, or the character code (`charCode`) for an alphanumeric key pressed.

#### Defined by Event

###

`read onlybubbles:Bool`

A Boolean indicating whether the event bubbles up through the DOM or not.

###

`read onlycancelable:Bool`

A Boolean indicating whether the event is cancelable.

###

`read onlycurrentTarget:EventTarget`

A reference to the currently registered target for the event. This is the object to which the event is currently slated to be sent to; it's possible this has been changed along the way through retargeting.

###

`read onlydefaultPrevented:Bool`

Indicates whether or not `event.preventDefault()` has been called on the event.

###

`read onlyeventPhase:Int`

Indicates which phase of the event flow is being processed.

###

`read onlyexplicitOriginalTarget:EventTarget`

The explicit original target of the event (Mozilla-specific).

###

`read onlyisTrusted:Bool`

Indicates whether or not the event was initiated by the browser (after a user click for instance) or by a script (using an event creation method, like event.initEvent)

###

`read onlyoriginalTarget:EventTarget`

The original target of the event, before any retargetings (Mozilla-specific).

###

`read onlytarget:EventTarget`

A reference to the target to which the event was originally dispatched.

###

`read onlytimeStamp:Float`

The time at which the event was created, in milliseconds. By specification, this value is time since epoch, but in reality browsers' definitions vary; in addition, work is underway to change this to be a `DOMHighResTimeStamp` instead.

###

`read onlytype:String`

The name of the event (case-insensitive).

### Inherited Methods

#### Defined by UIEvent

###

`initUIEvent (aType:String, aCanBubble:Bool, aCancelable:Bool, aView:Window, aDetail:Int):Void`

Initializes a `UIEvent` object. If the event has already being dispatched, this method does nothing.

#### Defined by Event

###

`getPreventDefault ():Bool`

Non-standard. Returns the value of `Event.defaultPrevented`. Use `Event.defaultPrevented` instead.

###

`initEvent (type:String, bubbles:Bool, cancelable:Bool):Void`

Initializes the value of an Event created. If the event has already being dispatched, this method does nothing.

###

`preventDefault ():Void`

Cancels the event (if it is cancelable).

###

`stopImmediatePropagation ():Void`

For this particular event, no other listener will be called. Neither those attached on the same element, nor those attached on elements which will be traversed later (in capture phase, for instance)

###

`stopPropagation ():Void`

Stops the propagation of events further along in the DOM.