MouseEvent: movementX-Eigenschaft
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Die schreibgeschützte movementX-Eigenschaft des MouseEvent-Interfaces liefert die Differenz in der X-Koordinate der Maus (oder Zeiger) zwischen dem angegebenen Bewegungsereignis und dem vorherigen Bewegungsereignis desselben Typs.
Mit anderen Worten, der Wert der Eigenschaft wird so berechnet: currentEvent.movementX = currentEvent.screenX - previousEvent.screenX.
Der Wert ist für alle anderen Ereignisse als mousemove, pointermove und pointerrawupdate gleich null.
Warnung:
Browser verwenden unterschiedliche Einheiten für movementX und screenX, als es die Spezifikation definiert.
Abhängig vom 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 Client-Werten (screenX, screenY) und den vorherigen Client-Werten berechnen.
Wert
Eine Zahl.
Immer null bei jedem MouseEvent außer mousemove und jedem PointerEvent außer pointermove oder pointerrawevent.
Beispiele
>Mausbewegung für mousemove-Ereignisse protokollieren
Dieses Beispiel protokolliert die Menge der Mausbewegung mit movementX und movementY.
HTML
<p id="log">Move your mouse around.</p>
JavaScript
const log = document.getElementById("log");
function logMovement(event) {
log.insertAdjacentHTML(
"afterbegin",
`movement: ${event.movementX}, ${event.movementY}<br>`,
);
while (log.childNodes.length > 128) log.lastChild.remove();
}
document.addEventListener("mousemove", logMovement);
Ergebnis
Spezifikationen
| Specification |
|---|
| Pointer Lock 2.0> # dom-mouseevent-movementx> |