v144 ยท user input
Interoperable Pointer and Mouse boundary events after DOM changes
After an event target gets removed from the DOM, the logical target of the pointer as implied by the Pointer and Mouse boundary events (i.e. over, out, enter and leave events) should be the nearest ancestor still attached to the DOM. PEWG has recently reached consensus on this behavior, see https://github.com/web-platform-tests/interop/issues/380. Chro
concepts
-
Boundary Event Trace
Chrome now matches Safari and Firefox on pointer/mouse boundary events after DOM mutations under the cursor. Removes a long-standing cross-browser difference.
-
DOM Update Replay
Swap an element under a stationary pointer and watch the engine fire pointerleave / pointerenter so :hover state on the new node updates without input.
-
Swap vs Remove
Two scenes side by side — replacing the hovered element vs removing it — with a live event trace. Confirms the still-attached-ancestor target rule that Pointer Events WG agreed on.
-
Hover Menu
A navigation dropdown that is actually inserted and removed from the DOM on hover โ not just shown/hidden. A live event log captures every
pointerenter,pointerleave,pointerover, andpointeroutevent so you can see Chrome 144's correct ancestor-target dispatch in action.
why it shipped
After an event target gets removed from the DOM, the logical target of the pointer as implied by the Pointer and Mouse boundary events (i.e. over, out, enter and leave events) should be the nearest ancestor still attached to the DOM. PEWG has recently reached consensus on this behavior, see https://github.com/web-platform-tests/interop/issues/380. Chro