w3c / aria-practices

WAI-ARIA Authoring Practices Guide (APG)
https://www.w3.org/wai/aria/apg/
Other
1.18k stars 312 forks source link

Design pattern for Autocomplete missing #1134

Open JAWS-test opened 4 years ago

JAWS-test commented 4 years ago

Why is there no design pattern for input fields (no combo box) with autocomplete function? This element is very widespread on the web, wider than many of the other design patterns in the WAI-ARIA authoring practices. Also, for many of the ARIA design patterns, there are HTML equivalents that should be better used. This is not the case with Autocomplete, so any web developer who wants to use an input field with Autocomplete will have to resort to a well-functioning solution with ARIA. Almost all HTML/JS frameworks offer solutions for Autocomplete, but only a few are accessible. The keyboard operability is often given, but the output with the screen reader often does not work, because the corresponding ARIA roles (such as listbox and option) are missing or because the insertion of suggestions is not output via live region. If an Autocomplete pattern should be developed, I can advise what works well with JAWS and Chrome, Firefox and IE 11.

jnurthen commented 4 years ago

Can you detail how this is different to Example 1 at https://www.w3.org/TR/wai-aria-practices-1.1/examples/combobox/aria1.1pattern/listbox-combo.html ? Is this just perhaps a question of terminology?

JAWS-test commented 4 years ago

Many frameworks differentiate between combobox and autocomplete (for instance: https://demos.telerik.com/kendo-ui/combobox/index and https://jqueryui.com/autocomplete/).

I.e.

I don't like the first two examples at https://www.w3.org/TR/wai-aria-practices-1.1/examples/combobox/aria1.1pattern/listbox-combo.html as they are indeed a mixture of the different concepts of combobox and autocomplete. The third example is better (but it has the problem that the list is not completely displayed in the visible area when the combo box is at the bottom of the window).

JAWS-test commented 4 years ago

Another argument for a good autocomplete solution would be that role=combobox doesn't work with IE 11 at all and doesn't work well with Chrome and Firefox, see: https://github.com/FreedomScientific/VFO-standards-support/issues/221. These problems wouldn't occur with a correctly implemented autocomplete input field.