DOM Events Proposal: EventListenerOptions 'mayCancel' for improved scroll performance
Rick Byers <[email protected]> Wed, 8 Jul 2015 14:50:46 -0400
| Newsgroups | gmane.comp.web.dom.general |
|---|---|
| Message-ID | <CAFUtAY-T9-JbYUGohTynBdef7UftNkiaKW6X=Ht5e1D-PQjZGQ@mail.gmail.com> |
In Chromium we've long struggled with maximizing scroll performance, with scroll-blocking DOM events (wheel and touchstart in particular) being by far the biggest source of scroll jank. I've been talking about this problem off-and-on for several years with various folks including the Pointer Events Working Group, engineers of other browser vendors, and engineers working on popular libraries that are a source of such scroll-blocking event handlers (eg. Google Ads and Google Analytics). I've now written a relatively formal (but still sloppy by W3C standards) concrete spec for extending the DOM event model <http://rbyers.github.io/EventListenerOptions/EventListenerOptions.html> to address this problem and would like to solicit feedback. It's probably most constructive to discuss specific issues on GitHub <https://github.com/RByers/EventListenerOptions/issues>, but I'd appreciate any high-level feedback here by e-mail too. Please feel free to submit pull requests for eg. editorial improvements. Once there's a bit more consensus on the API shape, I plan to write a polyfill and W3C-style tests and then begin a prototype implementation in Chromium. We have some initial evidence to believe that this (in partnership with a few key library authors) can make a substantial improvement to the user experience on mobile. I hope to be able to share more concrete data on the real-world performance impact, but there's obviously a chicken and egg problem here. Thanks, Rick