MouseEvent: movementX-Eigenschaft

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.

Die movementX schreibgeschützte Eigenschaft des MouseEvent-Interfaces liefert die Differenz der X-Koordinate des Mauszeigers zwischen dem gegebenen Ereignis und dem vorherigen mousemove-Ereignis. Mit anderen Worten wird der Wert der Eigenschaft folgendermaßen berechnet: currentEvent.movementX = currentEvent.screenX - previousEvent.screenX.

Warnung: Browser [verwenden unterschiedliche Einheiten für movementX und screenX](https://github.com/w3c/pointerlock/issues/42) als die von der Spezifikation definierten. Je nach Browser und Betriebssystem können die movementX-Einheiten ein physisches Pixel, ein logisches Pixel oder ein CSS-Pixel sein. Sie sollten möglicherweise die Bewegungseigenschaften vermeiden und stattdessen das Delta zwischen den aktuellen Clientwerten (screenX, screenY) und den vorherigen Clientwerten berechnen.

Wert

Eine Zahl. Immer null bei jedem MouseEvent außer mousemove.

Beispiele

Dieses Beispiel protokolliert die Mausbewegung mit movementX und movementY.

HTML

html
<p id="log">Move your mouse around.</p>

JavaScript

js
function logMovement(event) {
  log.insertAdjacentHTML(
    "afterbegin",
    `movement: ${event.movementX}, ${event.movementY}<br>`,
  );
  while (log.childNodes.length > 128) log.lastChild.remove();
}

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

Ergebnis

Spezifikationen

Specification
Pointer Lock 2.0
# dom-mouseevent-movementx

Browser-Kompatibilität

Siehe auch