MouseEvent.initMouseEvent()

Deprecated
This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

The MouseEvent.initMouseEvent() method initializes the value of a mouse event once it's been created (normally using the Document.createEvent() method).

Events initialized in this way must have been created with the Document.createEvent() method. This method must be called to set the event before it is dispatched, using EventTarget.dispatchEvent(). Once dispatched, it doesn't do anything anymore.

Do not use this method anymore as it is deprecated.

Instead use specific event constructors, like MouseEvent(). The page on Creating and triggering events gives more information about the way to use these.

Syntax

event.initMouseEvent(type, canBubble, cancelable, view,
                     detail, screenX, screenY, clientX, clientY,
                     ctrlKey, altKey, shiftKey, metaKey,
                     button, relatedTarget);

Parameters

type
the string to set the event's type to. Possible types for mouse events include: click, mousedown, mouseup, mouseover, mousemove, mouseout.
canBubble
whether or not the event can bubble. Sets the value of Event.bubbles.
cancelable
whether or not the event's default action can be prevented. Sets the value of Event.cancelable.
view
the event's AbstractView. You should pass the window object here. Sets the value of UIEvent.view.
detail
the event's mouse click count. Sets the value of UIEvent.detail.
screenX
the event's screen x coordinate. Sets the value of MouseEvent.screenX.
screenY
the event's screen y coordinate. Sets the value of MouseEvent.screenY.
clientX
the event's client x coordinate. Sets the value of MouseEvent.clientX.
clientY
the event's client y coordinate. Sets the value of MouseEvent.clientY.
ctrlKey
whether or not control key was depressed during the Event. Sets the value of MouseEvent.ctrlKey.
altKey
whether or not alt key was depressed during the Event. Sets the value of MouseEvent.altKey.
shiftKey
whether or not shift key was depressed during the Event. Sets the value of MouseEvent.shiftKey.
metaKey
whether or not meta key was depressed during the Event. Sets the value of MouseEvent.metaKey.
button
the event's mouse button.
relatedTarget
the event's related EventTarget. Only used with some event types (e.g., mouseover and mouseout). In other cases, pass null.

Example

HTML

<div style="background:red; width:180px; padding:10px;">
  <div id="out"></div>
  <input type="text">
</div>

JavaScript

document.body.onclick = function(){
  e = arguments[0];
  var dt = e.target,stag = dt.tagName.toLowerCase();
  document.getElementById("out").innerHTML = stag;
};

var simulateClick = function(){
  var evt = document.createEvent("MouseEvents");
  evt.initMouseEvent("click", true, true, window, 0, 0, 0, 80, 20, false, false, false, false, 0, null);
  document.body.dispatchEvent(evt);
}

simulateClick();

Result

Specifications

Specification Status Comment
Document Object Model (DOM) Level 3 Events Specification
The definition of 'MouseEvent.initMouseEvent()' in that specification.
Obsolete From Document Object Model (DOM) Level 2 Events Specification, deprecated.
Document Object Model (DOM) Level 2 Events Specification
The definition of 'MouseEvent.initMouseEvent()' in that specification.
Obsolete Initial definition.

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
initMouseEvent
DeprecatedNon-standard
Chrome Full support YesEdge Full support 12Firefox Full support YesIE ? Opera Full support YesSafari ? WebView Android Full support YesChrome Android Full support YesFirefox Android Full support YesOpera Android Full support YesSafari iOS ? Samsung Internet Android Full support Yes

Legend

Full support
Full support
Compatibility unknown
Compatibility unknown
Non-standard. Expect poor cross-browser support.
Non-standard. Expect poor cross-browser support.
Deprecated. Not for use in new websites.
Deprecated. Not for use in new websites.

See also