HTMLIFrameElement.sendMouseEvent()

Non-standard
This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

The sendMouseEvent() method of the HTMLIFrameElement interface allows you to fake a mouse event and send it to the browser <iframe>'s content.

Syntax

instanceOfHTMLIframeElement.sendMouseEvent(type, x, y, button,
                                           clickCount, modifiers);

Returns

Void.

Parameters

type
A string representing the event type. Possible values are mousedown, mouseup, mousemove, mouseover, mouseout, or contextmenu.
x
A number representing the x position of the cursor relative to the browser <iframe>'s visible area in CSS pixels.
y
A number representing the y position of the cursor relative to the browser <iframe>'s visible area in CSS pixels.
button
A number representing which button has been pressed on the mouse: 0 (Left button), 1 (middle button), or 2 (right button).
clickCount
The number of clicks that should be performed.
modifiers
A number representing a key pressed at the same time the mouse button was clicked:
  • 1 : Alt
  • 2 : Ctrl
  • 4 : Shift
  • 8 : Meta
  • 16 : Alt Gr
  • 32 : Caps Lock
  • 64 : Fn
  • 128 : Num Lock
  • 256 : Scroll
  • 512 : Symbol Lock
  • 1024 : Win

Note: You can specify multiple key modifiers separated by a pipe symbol, for example 1 | 1014.

Examples

var browser = document.querySelector('iframe');
browser.sendMouseEvent("mousemove", x, y, 0, 0, 0);
browser.sendMouseEvent("mousedown", x, y, 0, 1, 0);
browser.sendMouseEvent("mouseup", x, y, 0, 1, 0);

Specification

Not part of any specification.

Browser compatibility

Supported since Firefox 47, in chrome code only.

Unlikely ever to be supported in other browsers.

See also