MouseEvent

Summary

The DOM 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. The list of all events using this interface is provided in the Events reference.

MouseEvent derives from UIEvent, which in turn derives from Event.

Properties

MouseEvent.altKey Read only
true if the alt key was down when the mouse event was fired.
MouseEvent.button Read only
The button number that was pressed when the mouse event was fired. 
MouseEvent.buttons Read only DOM level 3

The buttons being pressed when the mouse event was fired

MouseEvent.clientX Read only
The X coordinate of the mouse pointer in local (DOM content) coordinates.
MouseEvent.clientY Read only
The Y coordinate of the mouse pointer in local (DOM content) coordinates.
MouseEvent.ctrlKey Read only
true if the control key was down when the mouse event was fired.
MouseEvent.metaKey Read only
true if the meta key was down when the mouse event was fired.
MouseEvent.movementX Read only
The X coordinate of the mouse pointer relative to the position of the last mousemove event.
MouseEvent.movementY Read only
The Y coordinate of the mouse pointer relative to the position of the last mousemove event.
MouseEvent.relatedTarget Read only

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

MouseEvent.screenX Read only
The X coordinate of the mouse pointer in global (screen) coordinates.
MouseEvent.screenY Read only
The Y coordinate of the mouse pointer in global (screen) coordinates.
MouseEvent.shiftKey Read only
true if the shift key was down when the mouse event was fired.
MouseEvent.mozPressure   Read only
The amount of pressure applied to a touch or tablet device when generating the event; this value ranges between 0.0 (minimum pressure) and 1.0 (maximum pressure).
MouseEvent.mozInputSource   Read only

The type of device that generated the event (one of the MOZ_SOURCE_* constants listed below).

This lets you, for example, determine whether a mouse event was generated by an actual mouse or by a touch event (which might affect the degree of accuracy with which you interpret the coordinates associated with the event).

Methods

MouseEvent.getModifierState() DOM level 3
Returns the current state of the specified modifier key. See the KeyboardEvent.getModifierState() documentation for details.

Initiate Mouse Event

Click here to see how to initiate mouse event

Example

This example demonstrates simulating a click (that is programmatically generating a click event) on a checkbox using DOM methods. You can view the example in action here.

function simulateClick() {
  var evt = document.createEvent("MouseEvents");
  evt.initMouseEvent("click", true, true, window,
    0, 0, 0, 0, 0, false, false, false, false, 0, null);
  var cb = document.getElementById("checkbox"); //element to click on
  var canceled = !cb.dispatchEvent(evt);
  if(canceled) {
    // A handler called preventDefault
    alert("canceled");
  } else {
    // None of the handlers called preventDefault
    alert("not canceled");
  }
}

Specifications

Specification Status Comment
Document Object Model (DOM) Level 2 Events Specification Recommendation  
Document Object Model (DOM) Level 3 Events Specification Working Draft  
UI Events Working Draft Extend DOM3
Pointer Lock Working Draft Extend the MouseEvent interface

Browser compatibility

Feature Firefox (Gecko) Chrome Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
movementX
movementY
(Yes) moz (Yes) webkit ? ? ?
buttons (Yes) Not supported ? ? ?
Feature Firefox Mobile (Gecko) Android IE Mobile Opera Mobile Safari Mobile
Basic support ? ? ? ? ?

Gecko notes

Specific constants

The possible values for MouseEvent.mozInputSource are listed in the following table. They are available as properties on the MouseEvent interface (e.g. MouseEvent.MOZ_SOURCE_UNKNOWN).

Constant name Value Desription
MOZ_SOURCE_UNKNOWN 0 The input device is unknown.
MOZ_SOURCE_MOUSE 1 The event was generated by a mouse (or mouse-like device).
MOZ_SOURCE_PEN 2 The event was generated by a pen on a tablet.
MOZ_SOURCE_ERASER 3 The event was generated by an eraser on a tablet.
MOZ_SOURCE_CURSOR 4 The event was generated by a cursor.
MOZ_SOURCE_TOUCH 5 The event was generated on a touch interface.
MOZ_SOURCE_KEYBOARD 6 The event was generated by a keyboard.

 

Document Tags and Contributors

Last updated by: Noitidart,