When the user hits the bottom of the TOC list (or the bottom of the currently loaded set) the page scrolls behind the TOC, this is distracting. Generally, all floating lists should have this behavior, disallowing scroll focus to shift behind the overlay would be a consistent pattern applied to all scrolling overlays.
Description
Status | Subtype | Assigned | Task | ||
---|---|---|---|---|---|
Open | None | T93279 Scrolling within in-page regions transfers scroll action to page at end of list (tracking) | |||
Open | None | T89336 Scrolling within the Table of Contents in Flow should not scroll page |
Event Timeline
we think this is probably not easily fixable. If someone wants to look into how to cancel scrolling events across browsers they can.
One of the instances where this is more problematic is while infinite scroll is applied to the ToC.
That is tracked at T78573: Trigger topic loading (infinite scroll) before the very end of the list is reached (ToC v2)
Probably should merge this with the general T72908: Echo overlay should not transfer scroll action to background window and check to see how Pinterest handles this, because obviously it is solvable.
I think both should be solved. We should avoid the loading indicator to be easily visible if we can anticipate it earlier. Solving one of the issues makes the other issue a little less painful, but does not solve them completely.
Only decreasing the instances where the user sees the end of the list is an
improvement but doesn't solve for instance of scrolling lists which have
ends. Even in these list should behave the same way, with the scroll not
passing to the background page.
*Jared Zimmerman * \\ Director of User Experience \\ Wikimedia Foundation
M +1 415 609 4043 \\ @Jaredzimmerman http://loo.ms/g0
@Jaredzimmerman-WMF I totally agree. Even if we make the infinite loading work soothly, the issue of the scrolling being propagated will happen when you reach the real end of the list. So, yes, the scroll propagation is something to solve in any case.
In the same way, even if we solve the scrolling issue, getting the loading indicator too early will be also an issue to solve.
This is why I consider both issues related and relevant but still independent.
It definitely appears to be possible, though I haven't looked in to the "how" yet:
http://stackoverflow.com/questions/5802467/prevent-scrolling-of-parent-element
http://stackoverflow.com/questions/7600454/how-to-prevent-page-scrolling-when-scrolling-a-div-element
It seems that this approach and example provide a possible solution. It seems to be working well across browsers, but others need to evaluate whether is the best approach to be integrated into Mediawiki.