Authors: Theodor Vararu, Léonie Watson, Ed Horsford.
This describes the necessary behaviours that an autocomplete needs to meet to be usable by assistive technologies.
They are useful if you are evaluating accessible-autocomplete
, or a different autocomplete solution.
As an Assistive Technology (AT) user, I want to be able to search using autocomplete, so I can find and choose a matching result easily and accurately.
The field with autocomplete must:
- Be focusable with a keyboard
- Indicate when it has keyboard focus
- Inform the user that it is an editable field
- Inform the user if there is a pre-filled value
- Inform the user that autocomplete is available
- Explain how to use autocomplete
- Inform the user that content has been expanded
- Inform the user when there are matches, or if there are no matches
- (Optional) Inform the user how many matches are currently available
- Inform the user as the number of matches changes
- Enable the user to navigate the available matches, using just one input method (pointer, mouse, touch or keyboard)
- Enable the user to navigate the available matches, with a single action at a time (no dragging movements or multi-key presses needed)
- Inform the user when a match is selected
- (Optional) Inform the user which number the currently selected match is (1 of 3 for example)
- Inform the user if a match is pre-selected
- Enable the user to confirm the selected match
- Inform the user when a match is confirmed
- Return focus to the editable field when a selected match is confirmed
Helpful definitions:
navigate
: When the user selects between matchesselected
: When one of the matches is highlighted, and ready to be confirmed, for example by pressingenter
pre-selected
: When an item is selected on the user's behalf without them navigating to itconfirmed
: When one of the matches has been confirmed, and will be submitted as a value of the parent form