MouseEvent: movementX-Eigenschaft

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