MouseEvent:movementY 属性

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

浏览器兼容性

参见