Scripts are accessible |
Section 508 1194.22(l); WAI / WCAG 1.0 checkpoints 6.3, 8.1, 9.2, 9.3
Issue Description The page contains a programmatic object such as a script, a plug-in, or an applet that may be used to change the content of the page or its navigation options - and perhaps reduce the page's accessibility.
How to check Inaccessible programmatic objects may include:

- Rollovers
- Scripts that present menu options
- Scripts that handle events triggered by devices other than a keyboard
- Plug-ins such as Flash, Shockwave, RealAudio, and RealVideo
- Java applets

Examine the programmatic object included on the page and see if it provides information or interaction options not available through other text on the page.

If the script cannot be made accessible, one solution is to include a NOSCRIPT tag with alternative and equivalent content and interaction (using a form).

Consider also transforming the client-side script into an equivalent server-side script. In this case, you must write it so that it produces accessible pages.

Issue Explanation Programmatic objects can change the presentation, content, and navigation options of a page. If some of these changes are not associated to text that can be read by assistive technology, then the page is not accessible. For example, using a script to show a menu of choices on a page without also providing the choices as textual links would make the page inaccessible.

A related concept is "device independence." As defined by W3C/WAI (see http://www.w3.org/TR/WAI-WEBCONTENT/#device-independent), it means that users must be able to interact with a website using the supported input and output devices of their choice according to their needs. Input devices may include pointing devices, keyboards, Braille devices, head wands, microphones, and others. Output devices may include monitors, speech synthesizers, and Braille devices.

Note that "device-independent support" does not mean that the browser must support every input or output device. It should offer redundant input and output mechanisms for those devices that are supported. For example, if a browser supports keyboard and mouse input, users should be able to interact with all features using either the keyboard or the mouse.

Device-independent access means that the user may interact with the user agent or document with a preferred input (or output) device. For example, if a form control can only be activated with a mouse or other pointing device, someone using the page without sight, with voice input, or with a keyboard will not be able to use the form. The form is an example of device dependence, because its use would be possible only through a mouse.

Generally, pages that allow keyboard interaction are also accessible through speech input or a command-line interface.