This Wiki page is edited by participants of the HTML Accessibility Task Force. It does not necessarily represent consensus and it may have incorrect information or information that is not supported by other Task Force participants, WAI, or W3C. It may also have some very useful information.
Access/event handler requirements
Proposed Keyboard Requirements Based on UAAG 2.0 Guideline 4.2 "Provide access to event handlers"
Note: The first three of the following four proposed additions to the original nine requirements defined by PFWG were requested inclusions by the UAWG; note that the references to UAAG are NOT intended to be part of the requirements document, but serve as a reference for purposes of reviewing this document
REQUIREMENT EV1: a user must have the ability to obtain the list of input device event handlers explicitly associated with an element in a device independent manner.
- Explanatory note EV1.1: Users interacting with a web browser may be doing so by voice, keyboard, mouse or another input technology or a combination of any of these. No matter how the user is controlling the user agent, he or she needs to know all the input methods assigned to a particular piece of content.
- Explanatory note EV1.2: this is a Level A requirement of UAAG 2.0 SC 4.2.1. "List Event Handlers"
REQUIREMENT EV2: a user must be able to activate any input device event handlers explicitly associated with an element in a device independent manner.
- Explanatory note EV2.1: Although it should not be so designed, some Web content is designed to work only with certain input devices, such as a mouse, thereby limiting the availability of those event handlers to specific devices. Some users interacting with a web browser may be doing so by voice, keyboard, mouse or another input technology or a combination of any of these. No matter how the user is controlling the user agent, he or she must be able to activate any of the event handlers regardless of the interaction technology being used.
- Explanatory note EV2.2: A user who cannot use a mouse needs to activate a flyout menu that normally appears OnMouseOver. The user should be able to navigate to a link and activate it using keyboard shortcuts.
- Explanatory note EV2.3: This is a UAAG 2.0 SC 4.2.2 "Activate any event handler", a Level A requirement
REQUIREMENT EV3: a user must be able to simultaneously activate all input device event handlers explicitly associated with an element in a device-independent manner.
- Explanatory note EV3.1: One input method should not hold back another. People who don't use a mouse shouldn't necessarily have to map their input methods to the same steps a mouse user would take.
- Speech input users may combine moving the mouse up, left and clicking in a single command phrase.
- A link has an onmousedown and an onmouseup event link. The keyboard user should be able to use 1 key click to activate both events.
- Explanatory note EV3.2: this is UAAG 2.0 SC 4.2.3 "Activate all event handlers" a Level A requirement
NEW REQUIREMENT EV4: HTML5 must provide a standard way to enumerate the events on a DOM node and a parallel method to use addEventListener and removeEventListener to obtain a collection of "events" or an enumeration function.
- Explantory Note 1: This is extremely important for analyzing web applications for identifying keyboard support for widgets.