WebAIM - Web Accessibility In Mind

E-mail List Archives

Re: question re:javascript menus

for

From: Paul Bohman
Date: Aug 24, 2001 11:02PM


Providing the content in a noscript tag is good for those who have
JavaScript disabled. There are two _very large pitfalls_ to this approach
though:
1. Most screen readers work with Internet Explorer, which, by default, has
JavaScript enabled. This means that most people using screen readers will
never see the noscript content. Also, most people using screen readers do
not use a mouse. This usually means that they will never be able to activate
drop-down menus which require mouse movement. They will never know the menus
are there, and they will miss out on the content.
2. Most people with mobility impairments who cannot use a mouse will never
be able to activate the menus either, for the same reason. Tabbing to a link
does not activate menus with the onMouseover event handler.
Conclusion: JavaScript menus activated by a mouse are completely
inaccessible to screen reader users and others who depend on the keyboard,
even if a noscript tag is present.
Possible solutions:
1. Don't use JavaScript menus.
2. Provide a redundant non-JavaScript alternative somewhere else on the
page. The Microsoft web site is a good example of this approach. They have
menus that only work in Internet Explorer on a Windows machine. When you go
to the site in Netscape or Opera, the drop down menus are absent, but there
are text links which provide the same function.
3. Provide a text only version of the site, with all the related links. This
is a tricky and dangerous option, because it means you have to maintain two
"separate but equal" sites, which is a tough task to do, unless you have a
sophisticated database system with server-side scripting.
4. Use HTML form drop-down elements, rather than JavaScript ones. (Make sure
that JavaScript is not required to activate them.)
Paul Bohman
Technology Coordinator
WebAIM (Web Accessibility in Mind)
www.webaim.org
Utah State University
www.usu.edu