Please note, this is a STATIC archive of website developer.mozilla.org from 03 Nov 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

Revision 1025156 of MouseEvent

  • Revision slug: Web/API/MouseEvent
  • Revision title: MouseEvent
  • Revision id: 1025156
  • Created:
  • Creator: scheib
  • Is current revision? No
  • Comment Edge added to Browser compatibility; .movement, .buttons, .which added. Other features TO BE DETERMINED.

Revision Content

{{APIRef("DOM Events")}}

The 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 {{event("click")}}, {{event("dblclick")}}, {{event("mouseup")}}, {{event("mousedown")}}.

MouseEvent derives from {{domxref("UIEvent")}}, which in turn derives from {{domxref("Event")}}. Though the {{domxref("MouseEvent.initMouseEvent()")}} method is kept for backward compatibility, creating of a MouseEvent object should be done using the {{domxref("MouseEvent.MouseEvent", "MouseEvent()")}} constructor.

Several more specific events derivate from MouseEvent: {{domxref("WheelEvent")}} and {{domxref("DragEvent")}}.

Constructor

{{domxref("MouseEvent.MouseEvent", "MouseEvent()")}}
Creates a MouseEvent object.

Properties

This interface also inherits properties of its parents, {{domxref("UIEvent")}} and {{domxref("Event")}}.

{{domxref("MouseEvent.altKey")}} {{readonlyinline}}
Returns true if the alt key was down when the mouse event was fired.
{{domxref("MouseEvent.button")}} {{readonlyinline}}
The button number that was pressed when the mouse event was fired. 
{{domxref("MouseEvent.buttons")}} {{readonlyinline}} {{gecko_minversion_inline("15.0")}}

The buttons being pressed when the mouse event was fired

{{domxref("MouseEvent.clientX")}} {{readonlyinline}}
The X coordinate of the mouse pointer in local (DOM content) coordinates.
{{domxref("MouseEvent.clientY")}} {{readonlyinline}}
The Y coordinate of the mouse pointer in local (DOM content) coordinates.
{{domxref("MouseEvent.ctrlKey")}} {{readonlyinline}}
Returns true if the control key was down when the mouse event was fired.
{{domxref("MouseEvent.metaKey")}} {{readonlyinline}}
Returns true if the meta key was down when the mouse event was fired.
{{domxref("MouseEvent.movementX")}} {{readonlyinline}}
The X coordinate of the mouse pointer relative to the position of the last {{event("mousemove")}} event.
{{domxref("MouseEvent.movementY")}} {{readonlyinline}}
The Y coordinate of the mouse pointer relative to the position of the last {{event("mousemove")}} event.
{{domxref("MouseEvent.offsetX")}} {{readonlyinline}}{{experimental_inline}}
The X coordinate of the mouse pointer relative to the position of the padding edge of the target node.
{{domxref("MouseEvent.offsetY")}} {{readonlyinline}}{{experimental_inline}}
The Y coordinate of the mouse pointer relative to the position of the padding edge of the target node.
{{domxref("MouseEvent.pageX")}} {{readonlyinline}}{{experimental_inline}}
The X coordinate of the mouse pointer relative to the whole document.
{{domxref("MouseEvent.pageY")}} {{readonlyinline}}{{experimental_inline}}
The Y coordinate of the mouse pointer relative to the whole document.
{{domxref("MouseEvent.region")}} {{readonlyinline}}
Returns the id of the hit region affected by the event. If no hit region is affected, null is returned.
{{domxref("MouseEvent.relatedTarget")}} {{readonlyinline}}

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

{{domxref("MouseEvent.screenX")}} {{readonlyinline}}
The X coordinate of the mouse pointer in global (screen) coordinates.
{{domxref("MouseEvent.screenY")}} {{readonlyinline}}
The Y coordinate of the mouse pointer in global (screen) coordinates.
{{domxref("MouseEvent.shiftKey")}} {{readonlyinline}}
Returns true if the shift key was down when the mouse event was fired.
{{domxref("MouseEvent.which")}} {{non-standard_inline}} {{readonlyinline}}
The button being pressed when the mouse event was fired.
{{domxref("MouseEvent.mozPressure")}} {{non-standard_inline()}} {{readonlyinline}}
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).
{{domxref("MouseEvent.mozInputSource")}} {{non-standard_inline()}} {{readonlyinline}}

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).

{{domxref("MouseEvent.webkitForce")}} {{non-standard_inline()}} {{readonlyinline}}
The amount of pressure applied when clicking
{{domxref("MouseEvent.x")}} {{experimental_inline}}{{readonlyinline}}
Alias for {{domxref("MouseEvent.clientX")}}.
{{domxref("MouseEvent.y")}} {{experimental_inline}}{{readonlyinline}}
Alias for {{domxref("MouseEvent.clientY")}}

Constants

{{domxref("MouseEvent.WEBKIT_FORCE_AT_MOUSE_DOWN")}} {{non-standard_inline}}{{readonlyinline}}
Minimum force necessary for a normal click
{{domxref("MouseEvent.WEBKIT_FORCE_AT_FORCE_MOUSE_DOWN")}} {{non-standard_inline}}{{readonlyinline}}
Minimum force necessary for a force click

Methods

This interface also inherits methods of its parents, {{domxref("UIEvent")}} and {{domxref("Event")}}.

{{domxref("MouseEvent.getModifierState()")}}
Returns the current state of the specified modifier key. See the {{domxref("KeyboardEvent.getModifierState")}}() for details.
{{domxref("MouseEvent.initMouseEvent()")}} {{deprecated_inline}}
Initializes the value of a MouseEvent created. If the event has already being dispatched, this method does nothing.

Example

This example demonstrates simulating a click (that is programmatically generating a click event) on a checkbox using DOM methods. 

function simulateClick() {
  var evt = new MouseEvent("click", {
    bubbles: true,
    cancelable: true,
    view: window,
  });
  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");
  }
}
document.getElementById("button").addEventListener('click', simulateClick);
<p><label><input type="checkbox" id="checkbox"> Checked</label>
<p><button id="button">Click me</button>

Click on the button to see how the sample works:

{{ EmbedLiveSample('Example', '', '', '') }}

Specifications

Specification Status Comment
{{SpecName("HTML WHATWG", "#dom-mouseevent-region", "MouseEvent.region")}} {{Spec2('HTML WHATWG')}} From {{SpecName('DOM3 Events')}}, added the region property.
{{SpecName('Pointer Lock','#extensions-to-the-mouseevent-interface','MouseEvent')}} {{Spec2('Pointer Lock')}} From {{SpecName('DOM3 Events')}}, added movementX and movementY properties.
{{SpecName('CSSOM View', '#extensions-to-the-mouseevent-interface', 'MouseEvent')}} {{Spec2('CSSOM View')}} From {{SpecName('DOM3 Events')}}, added offsetX and offsetY, pageX and pageY, x, and y properties.
{{SpecName('DOM3 Events','#events-mouseevents','MouseEvent')}} {{Spec2('DOM3 Events')}} From {{SpecName('DOM2 Events')}}, added the MouseEvent() constructor, the getModifierState() method and the buttons property.
{{SpecName('DOM2 Events','#Events-MouseEvent','MouseEvent')}} {{Spec2('DOM2 Events')}} Initial definition.

Browser compatibility

{{ CompatibilityTable() }}

Feature Firefox (Gecko) Edge Chrome Internet Explorer Opera Safari
Basic support {{CompatVersionUnknown()}} {{CompatVersionUnknown()}} {{CompatVersionUnknown()}} {{CompatVersionUnknown()}} {{CompatVersionUnknown()}} {{CompatVersionUnknown()}}
{{domxref("MouseEvent.movementX","movementX")}}
{{domxref("MouseEvent.movementY","movementY")}}
{{CompatVersionUnknown()}} {{property_prefix("moz")}} {{CompatVersionUnknown()}} {{CompatVersionUnknown()}} {{ CompatUnknown() }} {{CompatVersionUnknown()}} {{ CompatUnknown() }}
{{ domxref("MouseEvent.buttons", "buttons") }} {{ CompatVersionUnknown() }} {{CompatVersionUnknown()}} 43 {{ CompatUnknown() }} {{ CompatUnknown() }} {{CompatNo}}
{{ domxref("MouseEvent.which", "which") }} 1.0 {{CompatVersionUnknown()}} 1.0 9.0 5.0 1.0
{{domxref("MouseEvent.getModifierState()", "getModifierState()")}} {{CompatGeckoDesktop(15)}} {{CompatVersionUnknown()}} {{CompatVersionUnknown()}} {{CompatVersionUnknown()}} {{CompatVersionUnknown()}} {{CompatVersionUnknown()}}
{{domxref("MouseEvent.mozPressure", "mozPressure")}} and {{domxref("MouseEvent.mozInputSource", "mozInputSource")}} {{non-standard_inline}} {{CompatGeckoDesktop(2)}} {{ CompatUnknown() }} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}}
{{domxref("MouseEvent.MouseEvent", "MouseEvent()")}} {{CompatGeckoDesktop(11)}} {{ CompatUnknown() }} {{CompatVersionUnknown()}} 9.0 {{CompatVersionUnknown()}} {{ CompatUnknown() }}
{{domxref("MouseEvent.region")}} {{CompatGeckoDesktop(32)}} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }}
{{domxref("MouseEvent.offsetX")}}, and {{domxref("MouseEvent.offsetY")}}{{experimental_inline}} {{CompatGeckoDesktop(40)}} {{CompatVersionUnknown()}} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }}
Feature Firefox Mobile (Gecko) Android IE Mobile Opera Mobile Safari Mobile
Basic support {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }}

See also

  • Its direct parent, {{domxref("UIEvent")}}.

Revision Source

<p id="Summary">{{APIRef("DOM Events")}}</p>

<p>The <code><strong>MouseEvent</strong></code> interface represents events that occur due to the user interacting with a pointing device (such as a mouse). Common events using this interface include {{event("click")}}, {{event("dblclick")}}, {{event("mouseup")}}, {{event("mousedown")}}.</p>

<p><code>MouseEvent</code> derives from {{domxref("UIEvent")}}, which in turn derives from {{domxref("Event")}}. Though the {{domxref("MouseEvent.initMouseEvent()")}} method is kept for backward compatibility, creating of a <code>MouseEvent</code> object should be done using the {{domxref("MouseEvent.MouseEvent", "MouseEvent()")}} constructor.</p>

<p>Several more specific events derivate from <code>MouseEvent</code>: {{domxref("WheelEvent")}} and {{domxref("DragEvent")}}.</p>

<h2 id="Constructor">Constructor</h2>

<dl>
 <dt>{{domxref("MouseEvent.MouseEvent", "MouseEvent()")}}</dt>
 <dd>Creates a <code>MouseEvent</code> object.</dd>
</dl>

<h2 id="Properties">Properties</h2>

<p><em>This interface also inherits properties of its parents, {{domxref("UIEvent")}} and {{domxref("Event")}}.</em></p>

<dl>
 <dt>{{domxref("MouseEvent.altKey")}} {{readonlyinline}}</dt>
 <dd>Returns <code>true</code> if the <kbd>alt</kbd> key was down when the mouse event was fired.</dd>
 <dt>{{domxref("MouseEvent.button")}} {{readonlyinline}}</dt>
 <dd>The button number that was pressed when the mouse event was fired.&nbsp;</dd>
 <dt>{{domxref("MouseEvent.buttons")}} {{readonlyinline}} {{gecko_minversion_inline("15.0")}}</dt>
 <dd>
 <p>The buttons being pressed when the mouse event was fired</p>
 </dd>
 <dt>{{domxref("MouseEvent.clientX")}} {{readonlyinline}}</dt>
 <dd>The X coordinate of the mouse pointer in local (DOM content)&nbsp;coordinates.</dd>
 <dt>{{domxref("MouseEvent.clientY")}} {{readonlyinline}}</dt>
 <dd>The Y coordinate of the mouse pointer in local (DOM content)&nbsp;coordinates.</dd>
 <dt>{{domxref("MouseEvent.ctrlKey")}} {{readonlyinline}}</dt>
 <dd>Returns <code>true</code> if the <kbd>control</kbd> key was down when the mouse event was fired.</dd>
 <dt>{{domxref("MouseEvent.metaKey")}} {{readonlyinline}}</dt>
 <dd>Returns <code>true</code> if the <kbd>meta</kbd> key was down when the mouse event was fired.</dd>
 <dt>{{domxref("MouseEvent.movementX")}} {{readonlyinline}}</dt>
 <dd>The X coordinate of the mouse pointer relative to the position of the last {{event("mousemove")}} event.</dd>
 <dt>{{domxref("MouseEvent.movementY")}} {{readonlyinline}}</dt>
 <dd>The Y coordinate of the mouse pointer relative to the position of the last {{event("mousemove")}} event.</dd>
 <dt>{{domxref("MouseEvent.offsetX")}} {{readonlyinline}}{{experimental_inline}}</dt>
 <dd>The X coordinate of the mouse pointer relative to the position of the padding edge of the target node.</dd>
 <dt>{{domxref("MouseEvent.offsetY")}} {{readonlyinline}}{{experimental_inline}}</dt>
 <dd>The Y coordinate of the mouse pointer relative to the position of the padding edge of the target node.</dd>
 <dt>{{domxref("MouseEvent.pageX")}} {{readonlyinline}}{{experimental_inline}}</dt>
 <dd>The X coordinate of the mouse pointer relative to the whole document.</dd>
 <dt>{{domxref("MouseEvent.pageY")}} {{readonlyinline}}{{experimental_inline}}</dt>
 <dd>The Y coordinate of the mouse pointer relative to the whole document.</dd>
 <dt>{{domxref("MouseEvent.region")}} {{readonlyinline}}</dt>
 <dd>Returns the id of the hit region affected by the event. If no hit region is affected, <code>null</code> is returned.</dd>
 <dt>{{domxref("MouseEvent.relatedTarget")}} {{readonlyinline}}</dt>
 <dd>
 <p>The secondary target for the event, if there is one.</p>
 </dd>
 <dt>{{domxref("MouseEvent.screenX")}} {{readonlyinline}}</dt>
 <dd>The X coordinate of the mouse pointer in global (screen)&nbsp;coordinates.</dd>
 <dt>{{domxref("MouseEvent.screenY")}} {{readonlyinline}}</dt>
 <dd>The Y coordinate of the mouse pointer in global (screen)&nbsp;coordinates.</dd>
 <dt>{{domxref("MouseEvent.shiftKey")}} {{readonlyinline}}</dt>
 <dd>Returns <code>true</code> if the <kbd>shift</kbd> key was down when the mouse event was fired.</dd>
 <dt>{{domxref("MouseEvent.which")}} {{non-standard_inline}} {{readonlyinline}}</dt>
 <dd>The button being pressed when the mouse event was fired.</dd>
 <dt>{{domxref("MouseEvent.mozPressure")}} {{non-standard_inline()}} {{readonlyinline}}</dt>
 <dd>The amount of pressure applied to a touch or tablet device when generating the event; this value ranges between <code>0.0</code> (minimum pressure)&nbsp;and <code>1.0</code> (maximum pressure).</dd>
 <dt>{{domxref("MouseEvent.mozInputSource")}} {{non-standard_inline()}} {{readonlyinline}}</dt>
 <dd>
 <p>The type of device that generated the event (one of the <code>MOZ_SOURCE_*</code> 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).</p>
 </dd>
 <dt>{{domxref("MouseEvent.webkitForce")}} {{non-standard_inline()}} {{readonlyinline}}</dt>
 <dd>The amount of pressure applied when clicking</dd>
 <dt>{{domxref("MouseEvent.x")}} {{experimental_inline}}{{readonlyinline}}</dt>
 <dd>Alias for {{domxref("MouseEvent.clientX")}}.</dd>
 <dt>{{domxref("MouseEvent.y")}} {{experimental_inline}}{{readonlyinline}}</dt>
 <dd>Alias for {{domxref("MouseEvent.clientY")}}</dd>
</dl>

<h2 id="Constants">Constants</h2>

<dl>
 <dt>{{domxref("MouseEvent.WEBKIT_FORCE_AT_MOUSE_DOWN")}} {{non-standard_inline}}{{readonlyinline}}</dt>
 <dd>Minimum force necessary for a normal click</dd>
 <dt>{{domxref("MouseEvent.WEBKIT_FORCE_AT_FORCE_MOUSE_DOWN")}} {{non-standard_inline}}{{readonlyinline}}</dt>
 <dd>Minimum force necessary for a force click</dd>
</dl>

<h2 id="Methods">Methods</h2>

<p><em>This interface also inherits methods of its parents, {{domxref("UIEvent")}} and {{domxref("Event")}}.</em></p>

<dl>
 <dt>{{domxref("MouseEvent.getModifierState()")}}</dt>
 <dd>Returns the current state of the specified modifier key. See the {{domxref("KeyboardEvent.getModifierState")}}() for details.</dd>
 <dt>{{domxref("MouseEvent.initMouseEvent()")}} {{deprecated_inline}}</dt>
 <dd>Initializes the value of a <code>MouseEvent</code> created. If the event has already being dispatched, this method does nothing.</dd>
</dl>

<h2 id="Example">Example</h2>

<p>This example demonstrates simulating a click (that is programmatically generating a click event) on a checkbox using DOM methods.&nbsp;</p>

<pre class="brush: js">
function simulateClick() {
  var evt = new <a href="/en-US/docs/Web/API/MouseEvent">MouseEvent</a>("click", {
    bubbles: true,
    cancelable: true,
    view: window,
  });
  var cb = document.getElementById("checkbox"); //element to click on
  var canceled = !cb.<a href="/en-US/docs/Web/API/EventTarget.dispatchEvent" rel="internal" title="en/DOM/element.dispatchEvent">dispatchEvent</a>(evt);
  if(canceled) {
    // A handler called preventDefault
    alert("canceled");
  } else {
    // None of the handlers called preventDefault
    alert("not canceled");
  }
}
document.getElementById("button").addEventListener('click', simulateClick);</pre>

<pre class="brush: html">
&lt;p&gt;&lt;label&gt;&lt;input type="checkbox" id="checkbox"&gt; Checked&lt;/label&gt;
&lt;p&gt;&lt;button id="button"&gt;Click me&lt;/button&gt;</pre>

<p>Click on the button to see how the sample works:</p>

<p>{{ EmbedLiveSample('Example', '', '', '') }}</p>

<h2 id="Specifications">Specifications</h2>

<table class="standard-table">
 <tbody>
  <tr>
   <th scope="col">Specification</th>
   <th scope="col">Status</th>
   <th scope="col">Comment</th>
  </tr>
  <tr>
   <td>{{SpecName("HTML WHATWG", "#dom-mouseevent-region", "MouseEvent.region")}}</td>
   <td>{{Spec2('HTML WHATWG')}}</td>
   <td>From {{SpecName('DOM3 Events')}}, added the <code>region</code> property.</td>
  </tr>
  <tr>
   <td>{{SpecName('Pointer Lock','#extensions-to-the-mouseevent-interface','MouseEvent')}}</td>
   <td>{{Spec2('Pointer Lock')}}</td>
   <td>From {{SpecName('DOM3 Events')}}, added <code>movementX</code> and <code>movementY</code> properties.</td>
  </tr>
  <tr>
   <td>{{SpecName('CSSOM View', '#extensions-to-the-mouseevent-interface', 'MouseEvent')}}</td>
   <td>{{Spec2('CSSOM View')}}</td>
   <td>From {{SpecName('DOM3 Events')}}, added <code>offsetX</code> and <code>offsetY</code>, <code>pageX</code> and <code>pageY</code>, <code>x,</code> and <code>y</code> properties.</td>
  </tr>
  <tr>
   <td>{{SpecName('DOM3 Events','#events-mouseevents','MouseEvent')}}</td>
   <td>{{Spec2('DOM3 Events')}}</td>
   <td>From {{SpecName('DOM2 Events')}}, added the <code>MouseEvent()</code> constructor, the <code>getModifierState()</code> method and the <code>buttons</code> property.</td>
  </tr>
  <tr>
   <td>{{SpecName('DOM2 Events','#Events-MouseEvent','MouseEvent')}}</td>
   <td>{{Spec2('DOM2 Events')}}</td>
   <td>Initial definition.</td>
  </tr>
 </tbody>
</table>

<h2 id="Browser_compatibility" name="Browser_compatibility">Browser compatibility</h2>

<p>{{ CompatibilityTable() }}</p>

<div id="compat-desktop">
<table class="compat-table">
 <tbody>
  <tr>
   <th>Feature</th>
   <th>Firefox (Gecko)</th>
   <th>Edge</th>
   <th>Chrome</th>
   <th>Internet Explorer</th>
   <th>Opera</th>
   <th>Safari</th>
  </tr>
  <tr>
   <td>Basic support</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{CompatVersionUnknown()}}</td>
  </tr>
  <tr>
   <td>{{domxref("MouseEvent.movementX","movementX")}}<br />
    {{domxref("MouseEvent.movementY","movementY")}}</td>
   <td>{{CompatVersionUnknown()}} {{property_prefix("moz")}}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{ CompatUnknown() }}</td>
  </tr>
  <tr>
   <td>{{ domxref("MouseEvent.buttons", "buttons") }}</td>
   <td>{{ CompatVersionUnknown() }}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>43</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{CompatNo}}</td>
  </tr>
  <tr>
   <td>{{ domxref("MouseEvent.which", "which") }}</td>
   <td>1.0</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>1.0</td>
   <td>9.0</td>
   <td>5.0</td>
   <td>1.0</td>
  </tr>
  <tr>
   <td>{{domxref("MouseEvent.getModifierState()", "getModifierState()")}}</td>
   <td>{{CompatGeckoDesktop(15)}}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{CompatVersionUnknown()}}</td>
  </tr>
  <tr>
   <td>{{domxref("MouseEvent.mozPressure", "mozPressure")}} and {{domxref("MouseEvent.mozInputSource", "mozInputSource")}} {{non-standard_inline}}</td>
   <td>{{CompatGeckoDesktop(2)}}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{CompatNo}}</td>
   <td>{{CompatNo}}</td>
   <td>{{CompatNo}}</td>
   <td>{{CompatNo}}</td>
  </tr>
  <tr>
   <td>{{domxref("MouseEvent.MouseEvent", "MouseEvent()")}}</td>
   <td>{{CompatGeckoDesktop(11)}}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>9.0</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{ CompatUnknown() }}</td>
  </tr>
  <tr>
   <td>{{domxref("MouseEvent.region")}}</td>
   <td>{{CompatGeckoDesktop(32)}}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{ CompatUnknown() }}</td>
  </tr>
  <tr>
   <td>{{domxref("MouseEvent.offsetX")}}, and {{domxref("MouseEvent.offsetY")}}{{experimental_inline}}</td>
   <td>{{CompatGeckoDesktop(40)}}</td>
   <td>{{CompatVersionUnknown()}}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{ CompatUnknown() }}</td>
  </tr>
 </tbody>
</table>
</div>

<div id="compat-mobile">
<table class="compat-table">
 <tbody>
  <tr>
   <th>Feature</th>
   <th>Firefox Mobile (Gecko)</th>
   <th>Android</th>
   <th>IE Mobile</th>
   <th>Opera Mobile</th>
   <th>Safari Mobile</th>
  </tr>
  <tr>
   <td>Basic support</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{ CompatUnknown() }}</td>
   <td>{{ CompatUnknown() }}</td>
  </tr>
 </tbody>
</table>
</div>

<h2 id="See_also">See also</h2>

<ul>
 <li>Its direct parent, {{domxref("UIEvent")}}.</li>
</ul>
Revert to this revision