--- title: MouseEvent slug: Web/API/MouseEvent tags: - API - DOM - DOM Events - Interface - NeedsTranslation - Reference translation_of: Web/API/MouseEvent ---

{{APIRef("DOM Events")}}

Интерфейс MouseEvent представляет собой событие, которое происходит в результате взаимодествия пользователя с  манипулятором ( например, мышью). Наиболее частые из таких событий: {{event("click")}}, {{event("dblclick")}}, {{event("mouseup")}}, {{event("mousedown")}}.

MouseEvent выводится из метода {{domxref("UIEvent")}}, который в свою очередь происходит из метода {{domxref("Event")}}. Метод {{domxref("MouseEvent.initMouseEvent()")}} допустимо использовать для лучшей совместимости с предыдущими версиями, однако, для создания  MouseEvent рекомендуется использовать конструктор метода  {{domxref("MouseEvent.MouseEvent", "MouseEvent()")}}.

Несколько более конкретные события, производные от события mouseevent: {{domxref("WheelEvent")}} and {{domxref("DragEvent")}}.

Конструктор

{{domxref("MouseEvent.MouseEvent", "MouseEvent()")}}
Создает объект MouseEvent.

Свойства

Данный интерфес наследует свойства от родителей {{domxref("UIEvent")}} и {{domxref("Event")}}.

{{domxref("MouseEvent.altKey")}} {{readonlyinline}}
Возвращает значение true, если клавиша  alt была нажата во время движения мыши.
{{domxref("MouseEvent.button")}} {{readonlyinline}}
Представляет код клавиши, нажатой в то время, когда произошло событие мыши.
{{domxref("MouseEvent.buttons")}} {{readonlyinline}} {{gecko_minversion_inline("15.0")}}

Отображает, какие клавиши были нажаты во время движения мыши.

{{domxref("MouseEvent.clientX")}} {{readonlyinline}}
Отображение X координат курсора мыши в локальной системе координат (DOM контент).
{{domxref("MouseEvent.clientY")}} {{readonlyinline}}
Отображение Y координат курсора мыши в локальной системе координат (DOM контент).
{{domxref("MouseEvent.ctrlKey")}} {{readonlyinline}}
Возвращает значение true, если клавиша control была нажата во время движения мыши.
{{domxref("MouseEvent.metaKey")}} {{readonlyinline}}
Возвращает значение true, если клавиша meta была нажата во время движения мыши.
{{domxref("MouseEvent.movementX")}} {{readonlyinline}}
Отображает X координат указателя мыши относительно позиции последнего {{event("mousemove")}} события.
{{domxref("MouseEvent.movementY")}} {{readonlyinline}}
Отображает Y координат указателя мыши относительно позиции последнего {{event("mousemove")}} события.
{{domxref("MouseEvent.offsetX")}} {{readonlyinline}}{{experimental_inline}}
Отображает X координат указателя мыши относительно позиции границы отступа целевого узла.
{{domxref("MouseEvent.offsetY")}} {{readonlyinline}}{{experimental_inline}}
Отображает Y координат указателя мыши относительно позиции границы отступа целевого узла.
{{domxref("MouseEvent.pageX")}} {{readonlyinline}}{{experimental_inline}}
Отображает X координат указателя мыши относительно всего документа.
{{domxref("MouseEvent.pageY")}} {{readonlyinline}}{{experimental_inline}}
Отображает Y координат указателя мыши относительно всего документа.
{{domxref("MouseEvent.region")}} {{readonlyinline}}
Возвращает id затронутого событием региона. Если ни какой регион затронут не был, возвращает null.
{{domxref("MouseEvent.relatedTarget")}} {{readonlyinline}}
Второстепенная цель события, если таковая есть.
{{domxref("MouseEvent.screenX")}} {{readonlyinline}}
Отображает X координат указателя мыши в пространстве экрана.
{{domxref("MouseEvent.screenY")}} {{readonlyinline}}
Отображает Y координат указателя мыши в пространстве экрана.
{{domxref("MouseEvent.shiftKey")}} {{readonlyinline}}
Возвращает true если клавиша shift была нажата, когда произошло событие мыши.
{{domxref("MouseEvent.which")}} {{non-standard_inline}} {{readonlyinline}}
Возвращает код последней нажатой клавиши, когда произошло событие мыши.
{{domxref("MouseEvent.mozPressure")}} {{non-standard_inline()}} {{readonlyinline}}
Отображает давление которое было осуществленно при нажатии. Значение будет между 0.0 (минимальное давление) и 1.0 (максимальное давление).
{{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}}
Отображает количество приложенного давления при клике.
{{domxref("MouseEvent.x")}} {{experimental_inline}}{{readonlyinline}}
Alias для {{domxref("MouseEvent.clientX")}}.
{{domxref("MouseEvent.y")}} {{experimental_inline}}{{readonlyinline}}
Alias для {{domxref("MouseEvent.clientY")}}

Константы

{{domxref("MouseEvent.WEBKIT_FORCE_AT_MOUSE_DOWN")}} {{non-standard_inline}}{{readonlyinline}}
Минимальная необходимая сила для обычного клика
{{domxref("MouseEvent.WEBKIT_FORCE_AT_FORCE_MOUSE_DOWN")}} {{non-standard_inline}}{{readonlyinline}}
Минимальная необходимая сила для усиленного клика

Методы

Данный интерфес наследует свойства от родителей, {{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.

Примеры

Данный пример демонстрирует симуляцию нажатия левой клавиши мыши (событие мыши генерируется программно) по чекбоксу используя методы DOM.

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>

Нажмите на кнопку, чтобы посмотреть, как работает пример.

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

Спецификации

Спецификация Статус Комментарий
{{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.

Совместимость с браузерами

{{ CompatibilityTable() }}

Возможность Firefox (Gecko) Edge Chrome Internet Explorer Opera Safari
Базовая поддержка {{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)}} 9 {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }}
Возможность Firefox Mobile (Gecko) Android IE Mobile Opera Mobile Safari Mobile
Базовая поддержка {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }} {{ CompatUnknown() }}

Посмотрите также