WebAIM - Web Accessibility In Mind

E-mail List Archives

RE: Pop-Ups Question

for

From: Paul Bohman
Date: Jan 3, 2003 6:08PM


That does change the context a bit, but doesn't necessarily change the
answser.

If the purpose of the layered effect is integral to the purpose of the Web
content, then the layers are not disruptive, and can potentially be less
confusing. For many users they can actually be of great benefit.

The people who are probably NOT going to benefit from the layered effect are
those using screen readers. Depending on how the layers are constructed,
they will either be ignored by the screen reader or they will cause the
layer's contents to appear in some nonsensical place on the page that is
totally out of context.

Knowing this, you can choose a strategy that suits your needs. Here are two
basic options:

Option 1. Create your layers using Javascript in such a way that screen
readers ignore them. Then add a redundant method of accessing the same
content. For example, if the layers pop up with a mouseover action, make it
so that the same text is also available if you click on the link (clicking
on the link would take you to a separate page entirely). Thus you have two
methods of accessing the same content. One method is not accessible to
screen reader users. The other method IS accessible. Overall, your solution
is accessible and satisfies both audiences.

Option 2. Drop the layered approach.

In the first approach, you probably noticed that I said *what* to do but not
*how*. The way to make layers invisible to screen readers (which is what you
want to do if you choose this approach) is make them entirely dependent on
JavaScript. You can do this by calling the JavaScript from an external file
or by creating the layers by using "print" or "echo" statements inside of
the JavaScript itself.

You can check to see if your JavaScript is truly invisible or not by turning
off the JavaScript in your browser. If you don't see any of your layers
anywhere on the page, then you've succeeded. If the layers appear somewhere
else on the page, then you need to try again. The Opera browser
(www.opera.com) makes it easy to turn off JavaScript. Go to File > Quick
Preferences > Enable JavaScript and un-check the "Enable JavaScript" option.

In a sense, you want this JavaScript to be entirely *inaccessible* to screen
readers because partial accessibility can be worse than no accessibility.
Just don't forget to create the alternative version!

The downside to this approach is that you have to maintain two versions of
all of your layers. You could get even fancier and create them both from the
same source, using scripting (either JavaScript or server-side scripting) or
databases in conjunction with scripting. This eliminates the duplicity, but
it requires more work to set up in the first place.

The last thing that I'll say is make sure that you make it obvious to the
user how to close the layers. You could have them disappear when the mouse
is moved away, or you could create a prominent "close" button that is placed
consistently in each of the layers that you create.

Paul Bohman
Technology Coordinator
WebAIM (Web Accessibility in Mind)
www.webaim.org
Center for Persons with Disabilities
www.cpd.usu.edu
Utah State University
www.usu.edu



-----Original Message-----
From: <EMAIL REMOVED> [mailto: <EMAIL REMOVED> ]
Sent: Friday, January 03, 2003 5:27 PM
To: <EMAIL REMOVED>
Subject: RE: Pop-Ups Question


What this is for is a e-learning site. They want to move away from p