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:
  • 1Alt
  • 2Ctrl
  • 4Shift
  • 8Meta
  • 16Alt Gr
  • 32Caps Lock
  • 64Fn
  • 128Num Lock
  • 256Scroll
  • 512Symbol Lock
  • 1024Win

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

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support No No471 No No No
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support No No No No No No ?

1. Supported in chrome code only.

See also

Document Tags and Contributors

Contributors to this page: fscholz, chrisdavidmills, wbamberg, teoli, ajaybhat, kscarfone, Jeremie
Last updated by: fscholz,