We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

This feature has been removed from the Web standards. Though some browsers may still support it, it is in the process of being dropped. 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.


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


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



HTML Content

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

JavaScript Content

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);
simulateClick();//Why it can not show "input" ?

Here's a live demo

Link to live demo


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

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) ? (Yes) ?
Feature Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) ? (Yes) ?

See Also