MouseEvent:movementY 属性

Baseline 2023
Newly available

Since September 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

MouseEvent 接口的 movementY 只读属性提供了当前事件和上一个 mousemove 事件之间鼠标指针在 Y 坐标轴上的移动值。换句话说,这个值是这样计算的:currentEvent.movementY = currentEvent.screenY - previousEvent.screenY

警告: 浏览器对 movementYscreenY 使用与规范定义不同的单位。根据浏览器和操作系统的不同,movementY 单位可能是物理像素、逻辑像素或 CSS 像素。你可能希望避免使用 movement 属性,而是计算当前客户端值(screenXscreenY)与之前的客户端值之间的差值。

一个数字。除 mousemove 事件之外,在其他任何 MouseEvent 事件上始终为零。

示例

此示例使用 movementXmovementY 记录鼠标移动量。

HTML

html
<p id="log">移动鼠标。</p>

JavaScript

js
function logMovement(event) {
  log.innerText = `movement: ${event.movementX}, ${event.movementY}\n${log.innerText}`;
}

const log = document.getElementById("log");
document.addEventListener("mousemove", logMovement);

结果

规范

Specification
Pointer Lock 2.0
# dom-mouseevent-movementy

浏览器兼容性

参见