While scrolling via trackpad or mousewheel, we previously sent mouse position updates every 100ms. On pages with heavy mouse handlers or :hover styles, this could cause significant amounts of scroll jank. Sending a mouse position update includes updating :hover styles, and dispatching mousemove, mouseover, mouseenter, mouseleave, and mouseout events. We’re planning to stop sending mouse position updates while scrolling. Instead, we'll trigger this behavior 100ms after scrolling ends.


Status in Chromium


Enabled by default (tracking bug)

Consensus & Standardization

After a feature ships in Chrome, the values listed here are not guaranteed to be up to date.



Here's an example of a user facing behavior change, using the jQuery UI tooltip (http://output.jsbin.com/teyinu/1/quiet). To see the behavior difference, place the mouse cursor over the red box, then scroll via mouse wheel or trackpad. Without this change, every 100ms, the tooltip moves to the location of the cursor. With this change, the tooltip only moves once scrolling is complete.

Search tags

scroll, hover, mouse,

Last updated on 2020-11-09