Reconsider the usage of infinite scrolling across the admin
|Reported by:||afercia||Owned by:|
As accessibility team, we've often discussed and we're aware of some a11y issues in the WordPress admin but haven't formalized them in a Trac ticket yet. That's because they're general, broad, issues and they probably can't be solved soon, as they have a big impact on the way some relevant parts of the user interface are built. They would require some extensive discussion and research. Nevertheless, if we're not going to at least open a discussion, the solution is not going to happen 🙂 . During the last accessibility weekly meeting we've decided to open a series of tickets and use a special keyword to group them, something like a11y-task. This is the first ticket of the series.
Infinite scrolling (sometimes known as "endless scrolling") can be a serious accessibility barrier. It's used in the admin in a few places, for example:
- Media Grid
- Add Themes screens
- Customizer > Add menu items
- Editor > Insert/Edit link > Search
- any other places?
For a comprehensive view of all the potential issues, I'd refer to the list of resources below. I'd recommend everyone to have a look at those posts.
I'd say the issues can be grouped in three different categories: accessibility, usability, and performance. Just to mention some of the most relevant ones:
- a11y: it's impossible or very hard for keyboard users to reach content placed after an infinite scrolling region: think for example at the Media Grid, where tabbing through attachments loads more and more attachments (potentially hundreds or thousands of them) forcing users to keep tabbing indefinitely
- a11y: no audible feedback or instructions about how infinite scrolling works, the current and total number of items, or when new items get loaded
- usability: infinite scrolling often breaks the browser's history
- usability: there's no JS fallback
- performance: memory footprint can be huge, especially when loading hundreds of big images, see the Theme install screens
Resources mostly focused on accessibility:
Resources mostly focused on usability:
Resources focused on memory footprint:
Maybe for the future: the ARIA role feed
(at the time of writing, ARIA 1.1 is still a Candidate Recommendation, and as far as I know, no assistive technologies support the role feed)
See also: http://www.ssbbartgroup.com/blog/differences-aria-1-0-1-1-additions-role/