MouseEvent: Eigenschaft movementY
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Die schreibgeschützte movementY
-Eigenschaft der MouseEvent
-Schnittstelle gibt den Unterschied in der Y-Koordinate des Mauszeigers zwischen dem aktuellen Ereignis und dem vorherigen mousemove
-Ereignis an. Mit anderen Worten, der Wert der Eigenschaft wird wie folgt berechnet: currentEvent.movementY = currentEvent.screenY - previousEvent.screenY
.
Warnung: Browser [verwenden unterschiedliche Einheiten für movementY
und screenY
](https://github.com/w3c/pointerlock/issues/42) als in der Spezifikation definiert. Abhängig vom Browser und Betriebssystem können die Einheiten von movementY
ein physischer Pixel, ein logischer Pixel oder ein CSS-Pixel sein. Sie sollten in Erwägung ziehen, die Bewegungseigenschaften zu vermeiden und stattdessen das Delta zwischen den aktuellen Clientwerten (screenX
, screenY
) und den vorherigen Clientwerten zu berechnen.
Wert
Eine Zahl. Immer null bei jedem anderen MouseEvent
außer mousemove
.
Beispiele
Dieses Beispiel protokolliert die Menge der Mausbewegung unter Verwendung von movementX
und movementY
.
HTML
<p id="log">Move your mouse around.</p>
JavaScript
function logMovement(event) {
log.innerText = `movement: ${event.movementX}, ${event.movementY}\n${log.innerText}`;
}
const log = document.getElementById("log");
document.addEventListener("mousemove", logMovement);
Ergebnis
Spezifikationen
Specification |
---|
Pointer Lock 2.0 # dom-mouseevent-movementy |
Browser-Kompatibilität
BCD tables only load in the browser