Scroll Anchoring breaking the forums of gaijinpot.com |
|||
Issue descriptionVersion: 53.0.2780.0 OS: Android What steps will reproduce the problem? (1) enable scroll anchoring (2) goto https://forum.gaijinpot.com/forum/community-center/general-discussion (3) scroll down until you only have topics in view. What is the expected output? Stable scroll position What do you see instead? Scrollibg position is jumping up and down Please use labels and text to provide additional information.
,
Aug 12 2016
So this looks like another version of the judder bug, where our current hacks 1) bounce suppression and 2) hard limit of 20 doesn't work. The page has a "conversation-toolbar" that it sticks to the viewport using position:fixed every time the user scroll past it (simulating position:sticky). Note that it only does so if the page is wide enough, so not on mobile, where this particular bug is observed. Right below the "conversation-toolbar" there is a placeholder div that JS changes the visibility of when the toolbar is made fixed. This is to avoid content jump when position:fixed is attached. On mobile where the page doesn't stick the toolbar to the viewport, there is still weird JS listeners that change things on the placeholder div that causes layout and triggers the scroll anchoring path. The reason why bounce suppression doesn't work is that the layout is triggered on every scroll event (rather than the value of the scroll offset like in the other cases). In code we detect bouncing and suppress anchoring, but because the JS on the page continues to make changes that cause layout, we just do the "has it bounced once yet" logic again. The reason our 20 hard limit doesn't work is because after we have detected the second bounce and suppressed anchoring for that layout, we call clear() which resets our "consecutive adjustments" count. If we simply don't reset the count in this specific case, the judder still eventually stops, but that's still unacceptable because unlike in the tech crunch case where this only happened at a specific scroll position, here we see it on every scroll. This is just a poorly designed site, and not sure of an obvious fix. Though, I think SANACLAP proposal may fix this https://docs.google.com/document/d/1YxqdqXP6bzh-77acaWwfROsvpuoJ7LXUzHU-GXmv_WM/edit.
,
Aug 18 2016
Assuming that this would be not a typical case ("poorly designed"), we could resolve this as "outreach" needed.
,
Sep 6 2016
Verified that SANACLAP fixes this.
,
Sep 6 2016
|
|||
►
Sign in to add a comment |
|||
Comment 1 by skobes@chromium.org
, Jul 7 2016