Issue metadata
Sign in to add a comment
|
Scroll event is called after changing elements heights in its handler
Reported by
yec...@gmail.com,
Apr 14 2017
|
||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36 Steps to reproduce the problem: 1. Open https://jsfiddle.net/o708wcd4/20/ 2. Scroll down the list in Fiddle output window by mouse wheel 3. It would be scrolled down to the end of list What is the expected behavior? Scroll event should be called only twice - before scroll and after. Manipulations in the handler should not cause more scroll events (as they do not modify overall scrollable container height) What went wrong? I think the reason in settings heights to '.before' and '.after' elements inside the handler. But sum of their heights does not change, so no need on this event. Also, in previous version there were no event, and in other browsers (checked Edge, FF). Did this work before? Yes 55.0.2883.75 Chrome version: 57.0.2987.133 Channel: stable OS Version: 10.0 Flash Version: Shockwave Flash 25.0 r0 Maybe there is a way to set the heights of .before and .after elements without firing additional 'scroll' events?
,
Apr 18 2017
Huh, that is weird. I can repro in 60.0.3073.0 (Official Build) canary (32-bit) (cohort: 32-Bit) (Windows 10). The reporter says this used to not happen. Let's get a bisect on this, and figure out which team should take this.
,
Apr 20 2017
Able to reproduce the issue on the latest canary(60.0.3074.0) and the latest stable(58.0.3029.81) on Windows-10, Mac OS 10.12.3 and Linux Ubuntu 14.04. Regressed in M-56. ================== Last good build: 56.0.2895.0 First bad build: 56.0.2896.0 Changelog: ========== https://chromium.googlesource.com/chromium/src/+log/bf2f3855e7e22042ad5d11e785b13d6e7c84127a..6d380ba3ab246a15d6269a75328f481336b53ee1 Looks to be related to scroll anchoring. skobes@: Could you please take a look at this. Thank you!
,
Apr 20 2017
,
Apr 20 2017
Chrome 56 introduced scroll anchoring (https://github.com/WICG/ScrollAnchoring/blob/master/explainer.md), which can unfortunately have negative interactions with "virtual" scrollers. In this case, increasing the height of the .before div pushes the table down, causing a new scroll to occur. The best solution for virtual scrollers is to use CSS "overflow-anchor: none" to disable scroll anchoring.
,
Apr 21 2017
Thanks, "overflow-anchor: none" helps. |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by dglazkov@chromium.org
, Apr 14 2017Labels: -OS-Windows OS-All
Status: Untriaged (was: Unconfirmed)