html - What would the appropriate aria roles and behaviors for 2d x/y axis plane input be? -
i have component presents x/y axis plane , nub users can move around within plane. aspects of accessibility here seem pretty straight forward: nub should focusable; keyboard up/down/left/right should move nub interval increment x/y values in appropriate directions. secondary text input, these behaviors widget-proper may helpful regardless of whether users employing assistive technology.
but when began investigating how should mark aria-wise, wasn’t sure appropriate role/roles should be, or best way communicate available functionality is.
the closest match role appeared "slider": https://developer.mozilla.org/en-us/docs/web/accessibility/aria/aria_techniques/using_the_slider_role
however slider role described on mdn seems may specific single-axis sliders.
a slider 1d only, isn't appropriate role.
to convaince of this, read description of slider in aria 1.1. http://www.w3.org/tr/wai-aria-1.1/
nothing in description mentions may use else simple numerical values, comparison between values should unique , total (for 2d points not), , reads following:
elements role slider have implicit aria-orientation value of horizontal
it's horizontal; may vertical; not both @ same time.
by way, default, jaws example announce more or less slider: "left right slider. use left , right arrow keys adjust value" wrong case.
if in discrete plane, have suggested grid/row/gridcell. since selecting coordinates in continuous plane (or almost), case special / unconventional, hance there doesn't exist predefined aria recipe can apply.
in such case there no adequate role, tehe best play not indicate role @ component. assistive technology therefore not confuse user telling him control not really, nor giving him wrong indications on how use it. no indications @ better wrong ones.
you must of course still use aria-label/aria-labelledby give component label, make focusable , keyboard usable. should ideally compensate absence of predefined role giving precise keyboard usage instructions. this, keep rahter short in aria-describedby (which might read each time control focused), , if needed / if control quite complex, explain longer somewhere else plain text.
if it's complex, allowed give up, long provide acceptable alternate input mean giving equal possibilities. color chooser, enter rgb value or #xxxxxx code acceptable , sufficient alternate input means.
Comments
Post a Comment