MouseEvent.button
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
MouseEvent.button
свойство доступное только для чтения, возвращает значение, соответствующее нажатой кнопки мыши, которое инициировало событие.
Это свойство предоставляет информацию только о том, какая кнопка или несколько кнопок были нажаты или отпущены для инициации события, и не имеет отношения к таким событиям как mouseenter
, mouseleave
, mouseover
, mouseout
или mousemove
.
Пользователь может изменять конфигурацию кнопок своей мыши таким образом, что значение ноль будет получено при нажатии кнопки, не являющейся физически крайней левой кнопкой мыши, тем не менее, событие будет вести себя так, как будто левая кнопка была нажата в стандартной раскладкой кнопок.
Примечание:
Не путайте это свойство со свойством MouseEvent.buttons
, которое содержит значения, соответствующие нажатым кнопкам мыши для всех типов событий мыши.
Синтаксис
var buttonPressed = instanceOfMouseEvent.button
Возвращаемые значения
Число, соответствующее нажатой кнопке:
0
: Нажата основная кнопка. Левая кнопка мыши или переназначенная пользователем другая кнопка1
: Нажата вспомогательная кнопка. Колёсико или средняя кнопка мыши, если она есть2
: Нажата вторичная кнопка. Правая кнопка мыши3
: Нажата четвёртая кнопка мыши. Обычно кнопка браузера Назад4
: Нажата пятая кнопка мыши. Обычно кнопка браузера Вперёд
Для мыши, перенастроенной под левую руку, значения нажатых кнопок меняются местами. В этом случае значения читаются справа налево.
Пример
<script>
var whichButton = function (e) {
// Handle different event models
var e = e || window.event;
var btnCode;
if ('object' === typeof e) {
btnCode = e.button;
switch (btnCode) {
case 0:
console.log('Нажата левая кнопка.');
break;
case 1:
console.log('Нажата средняя кнопка или колёсико.');
break;
case 2:
console.log('Нажата правая кнопка.');
break;
default:
console.log('Неопределённое событие: ' + btnCode);
}
}
}
</script>
<button onmouseup="whichButton(event);" oncontextmenu="event.preventDefault();">Нажмите кнопку мыши...</button>
Спецификации
Specification |
---|
UI Events # dom-mouseevent-button |
Совместимость с браузерами
BCD tables only load in the browser