Opened 9 years ago
Closed 8 years ago
#15052 closed defect (fixed)
aria-valuenow is not a valid aria attribute for DateTextBox and TimeTextBox
Reported by: | jwforres | Owned by: | Douglas Hays |
---|---|---|---|
Priority: | undecided | Milestone: | 1.8.2 |
Component: | Accessibility | Version: | 1.4.3 |
Keywords: | Cc: | Becky Gibson, Douglas Hays | |
Blocked By: | Blocking: |
Description
According to the ARIA spec www.w3.org/TR/wai-aria/roles the aria-valuenow attribute only applies to HTML elements with a role that inherits from the "range" role, e.g. spinnerbox, slider, etc. The <input> element inside DateTextBox? and TimeTextBox? does not have any role in Dojo 1.4.3 and in 1.7 it has role of textbox. aria-valuenow is not considered a valid attribute on an element with role textbox.
Attachments (1)
Change History (13)
comment:1 Changed 9 years ago by
Owner: | changed from Becky Gibson to Douglas Hays |
---|---|
Status: | new → assigned |
comment:2 Changed 9 years ago by
Cc: | Becky Gibson added |
---|
comment:3 Changed 9 years ago by
Same issue for NumberTextBox?, but also contains aria-valuemin and aria-valuemax. Maybe aria-valuetext as well.
comment:4 Changed 9 years ago by
A similar issue is applying 'aria-pressed' to a selected tab in a TabContainer?, since aria-pressed is not valid for role=tab (http://www.w3.org/TR/wai-aria/roles). I'm sure there are more instances of dijits including extra aria attributes. In general these attributes are getting flagged by automated tools as errors but they do not seem to cause any useability problems (it seems that at least Jaws screen reader ignores invalid attributes.)
comment:6 Changed 9 years ago by
Owner: | changed from Douglas Hays to mikeb |
---|
comment:7 Changed 9 years ago by
The question is how a screenreader user gets to know the constraints of a DateTextBox and a TimeTextBox. aria-valuemin and aria-valuemax could help if those are announced by the screenreader when the control is focused. However arai-valuemin, aria-valuemax and arai-valuenow need to have a good readable description of their value, see http://bugs.dojotoolkit.org/ticket/15625.
Can anyone test this with a screenreader? Are those values announced? If so, I would not remove those attributes from RangeBoundText.js (although they are not considered as correct according to the specs).
comment:8 Changed 9 years ago by
None of the aria-value* attributes are announced by JAWS13 on the nightly build (tested DateTextBox? and TimeTextBox?.) JAWS just seems to read out whatever is in the value attribute of the input element, probably because the input has role=textbox. There does not seem to be any way to figure out the "max" and "min" allowed elements.
I think for now we should just remove these invalid elements. However, the main issue in my opinion is that these elements are in fact "range" widgets and the ARIA spec is incomplete since the only range widgets are progressbar, scrollbar, slider, and spinbutton.
Changed 8 years ago by
Attachment: | aria range attributes on Time and Date textboxes.patch added |
---|
removes aria range attributes for Date/TimeTextBoxes?, adds them back for _Spinner, fixes up test pages, please proxy commit for michael billau ccla on file with ibm
comment:9 Changed 8 years ago by
Cc: | Douglas Hays added |
---|
comment:10 Changed 8 years ago by
Milestone: | tbd → 1.8.2 |
---|
comment:11 Changed 8 years ago by
Owner: | changed from mikeb to Douglas Hays |
---|
Becky, I need help with this. DateTextBox? is a range textbox but it's role is neither of the approved role=range subclasses: progressbar,scrollbar,slider,spinbutton.