- From: James Craig <jcraig@apple.com>
- Date: Sun, 7 Dec 2008 23:00:33 -0800
- To: WAI XTech <wai-xtech@w3.org>
- Message-Id: <A02890E5-0A5E-483B-B20E-5A0BBF658361@apple.com>
slider is defined as, "A user input where the user selects a value from within a given range." The value of aria-valuenow is a decimal, defined as "a real number, represented as a decimal." Furthermore, the user interface hints in the spec imply that the value will always be set by the web application (when the user presses the arrow keys), and that the value should never be set by the user agent or assistive technology. From the perspective of a screen reader user, what's the functional difference between a slider and a spinbutton if they both have 1, 2, and 3 as potential values? None, as far as I can tell. Finally, the resulting functionally identical to that of a listbox; the only difference is semantics. listbox is defined as, "A widget that allows the user to select one or more items from a list of choices." Similarly, spinbutton, a type of range, is defined as, "A form of range that expects a user to select from amongst discrete choices." Therefore, the only semantic difference in ARIA seems to be that a range is just a listbox whose choices are in some form of numerical order. I understand the semantic benefit of alerting the use to the fact that a range is ordered selections, but since the user cannot set an arbitrary value on any ARIA range widget, I propose both of the following changes. They are related, so I am listing them together, but they are not interdependent, so each proposal should be considered separately. 1. Remove the spinbutton role, because the functionality and semantics are already covered by slider and listbox. 2. Allow the the aria-valuenow property of range widgets to be set directly by the user agent or assistive technology. This will allow range widgets to be more in line with the behavior of desktop range widgets, but would require a value format property (and potentially an increment value). For example, if the range were to increment a currency amount from 0 to 100 US dollars, the value formation could be defined as "$###.##" with an aria-valuemin="0" and aria-valuemax="100", and if the range were to represent a date from December 10, 2008 through January 5, 2009, the value format could be "yyyy-mm-dd" with an aria- valuemin="2008-12-10" and aria-valuemax="2009-01-05". There may also need to some hint of increment value if it cannot be determined from the value format or other range data. Thoughts? Comments?
Received on Monday, 8 December 2008 07:01:22 UTC