Client-side Scripting
For client-side scripting to be accessible all scripted functionality is available from the keyboard or there is a readily available keyboard accessible alternative. Scripted controls must identify themselves (name, role, state, value and properties) to assistive technology. Make sure that screen readers are aware of important content exposed with scripting.
JavaScript can introduce accessibility issues. These issues include:
- Navigation. Inability or difficulty navigating using a keyboard or assistive technology.
- Hidden content. Presentation of content or functionality that is not accessible to assistive technologies.
- User control. Lack of user control over automated content changes.
- Confusion/Disorientation. Altering or disabling the normal functionality of the browser or triggering events that the user may not be aware of.
A web page containing JavaScript will typically be fully accessible if the functionality of the script is device independent (does not require only a mouse or only a keyboard) and the information (content) is available to assistive technologies.
Not all Javascript is inaccessible. JavaScript is sometimes used to create visual interface elements that do not affect accessibility. Examples include rollovers or other visual effects.
Resources