Safari’s weird mousemove
The implementation of Safari’s
mousemove event differs in a notable way from Chrome and Firefox. After first mouse movement, Safari fires the event on key press of the modifier keys
metaKey. For example, the following logs the event name in Safari without mouse movement.
MouseEvent object uses the last known position values (i.e.
clientY), which can create issues. To get around this behavior and ensure the mouse has actually moved, check against the last known position: