MouseEvent: метод initMouseEvent()
Устарело: Эта функция больше не рекомендуется. Хотя некоторые браузеры могут её поддерживать, она может быть удалена из соответствующих веб-стандартов, находится в процессе удаления или поддерживается только для совместимости. Избегайте её использования и, если возможно, обновите существующий код; обратитесь к таблице совместимости внизу этой страницы, чтобы принять решение. Имейте в виду, что эта функция может перестать работать в любой момент.
Метод MouseEvent.initMouseEvent() инициализирует значение события мыши после его создания (обычно с помощью метода Document.createEvent()).
Предупреждение: Больше не используйте этот метод, так как он устарел.
Вместо этого используйте специфичные конструкторы событий, такие как MouseEvent(). На странице Создание и срабатывание событий вы найдёте больше информации о способах их использования.
События, инициализированные таким способом, должны быть созданы с помощью метода Document.createEvent(). Этот метод должен быть вызван для установки события перед его отправкой с помощью EventTarget.dispatchEvent().
Синтаксис
initMouseEvent(type, canBubble, cancelable, view,
detail, screenX, screenY, clientX, clientY,
ctrlKey, altKey, shiftKey, metaKey,
button, relatedTarget)
Параметры
type-
строка для установки типа события
type. Возможные типы событий мыши включают:click,mousedown,mouseup,mouseover,mousemove,mouseout. canBubble-
указывает, может ли событие распространяться вверх по DOM. Устанавливает значение
Event.bubbles. cancelable-
указывает, можно ли предотвратить стандартное действие события. Устанавливает значение
Event.cancelable. view-
Абстрактный объект представления события. Здесь нужно передать объект
window. Устанавливает значениеUIEvent.view. detail-
количество нажатий мыши. Устанавливает значение
UIEvent.detail. screenX-
координата x события на экране. Устанавливает значение
MouseEvent.screenX. screenY-
координата y события на экране. Устанавливает значение
MouseEvent.screenY. clientX-
координата x события относительно клиентской области. Устанавливает значение
MouseEvent.clientX. clientY-
координата y события относительно клиентской области. Устанавливает значение
MouseEvent.clientY. ctrlKey-
указывает, была ли нажата клавиша control во время события. Устанавливает значение
MouseEvent.ctrlKey. altKey-
указывает, была ли нажата клавиша alt во время события. Устанавливает значение
MouseEvent.altKey. shiftKey-
указывает, была ли нажата клавиша shift во время события. Устанавливает значение
MouseEvent.shiftKey. metaKey-
указывает, была ли нажата клавиша meta во время события. Устанавливает значение
MouseEvent.metaKey. -
кнопка мыши
button. -
связанный элемент события. Используется только с некоторыми типами событий (например,
mouseoverиmouseout). В других случаях передайтеnull.
Возвращаемое значение
None (undefined).
Примеры
HTML
<div style="background:red; width:180px; padding:10px;"> <div id="out"></div> <input type="text" /> </div>
JavaScript
document.body.onclick = (event) => {
const elementTag = event.target.tagName.toLowerCase();
document.getElementById("out").textContent = elementTag;
};
const simulateClick = () => {
const event = document.createEvent("MouseEvents");
event.initMouseEvent(
"click",
true,
true,
window,
0,
0,
0,
80,
20,
false,
false,
false,
false,
0,
null,
);
document.body.dispatchEvent(event);
};
simulateClick();
Результат
Спецификации
| Спецификация |
|---|
| UI Events # dom-mouseevent-initmouseevent |
Совместимость с браузерами
| Десктоп | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
initMouseEvent |
1 | 12 | 1.5 | ≤12.1 | 1 | 18 | 4 | ≤12.1 | 1 | 1.0 | ≤37 |
См. также
-
MouseEvent()конструктор, современный стандартный способ создания событияMouseEvent -
Event.initEvent()- более простой метод, выполняющий аналогичную задачу. Он также устарел и больше не должен использоваться.
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/initMouseEvent