AccessibleWeb@U meeting, October 20, 2005
-
Attending: Michael Gilbert, Marian Sheets, Joby Walker, Dylan Wilbanks, Patrick Michaud, Laura Baldwin, Linda Charm, Brent Holterman, Dan Comden, Rick Ells
-
Topic: AJAX and Accessibility
-
We do have a general state and UW commitment to accessibility
-
WA ISB Web Presentation Guide 5.0 Accessibility (
http://www.isb.wa.gov/tools/webguide/accessibility.aspx
)
-
Making UW Web Sites Accessible To Everyone (
http://www.washington.edu/computing/accessible/
)
-
HTML is fairly easy to make accessible
-
HTML was designed from the start to be device-independent (make the minimum number of assumptions about the client accessing the page)
-
HTML is a heirarchical data structure based on a semantic model of a composition (headings, paragraphs, lists, list items, etc.). To the extent a Web page follows that semantic model, client programs can use it to help interpret and present the Web page (JAWS ability to navigate by headings is an example)
-
HTML includes attributes such as ALT, LABEL, and SUMMARY that support non-graphical presentation of content.
-
Use of Javascript in HTML in the past has been to keep it in an optional role (page works without it, as stated in Section 508 1194.22 standards (
http://www.access-board.gov/sec508/guide/1194.22.htm
#(l))
-
AJAX is new and certain ways of using it will clearly make pages inaccessible.
-
AJAX code libraries are just now being developed. (
http://www.ajaxmatters.com/r/resources?id=17
)
-
Microsoft is working on adding AJAX capabilities to .Net (
http://www.devx.com/webdev/Article/28530
)
-
AJAX can be used in many different roles; best practices are still becoming apparent
-
Accessibility problems that have been identified include the following
-
Client-side AJAX can update page display without a page reload. Adaptive and assistive technology may not know what is going on.
-
Change may be made anywhere in the page - how can user be made aware of what has changed?
-
How can user be notified that the page needs to be reread?
-
How can reread be directed to what has changed?
-
Use of Focus - links, form fields, and other actionable elements should be able to receive focus so that a person can navigate to them from the keyboard. Actions should be evocable from the keyboard
-
Issues and concepts
-
Accessibility software usually works in conjunction with a browser (for example, JAWS is used with IE)
-
Many sighted people use screenreaders - we are not just talking about people with major disabilities.
-
Browser is the one that actually knows what it is displaying, not the server
-
DOM is being modified, should not be up to server side to notify the client
-
Distinction between text and application
-
Current Section 508 guidelines generally relate to Javascript being used to control presentation of text (such as in collapsible menus).
-
Currently, reload is indication to reread the page
-
AJAX is more about client-side processing in which the page becomes an application which can directly send and receive information to and from the server without a page reload.
-
With AJAX because changes are made in page presentation without a reload, we need an indicator to tell reader time to reread page
-
Same problem with Flash
-
We lack a good set of ideas on how to design client-side processing to work well with adaptive and assistive programs.
-
Providing the same functionality of a client-side application without Javascript is difficult
-
To comply with Section 508, the client-side application would need to deliver the same results in "functional text that can be read by assistive technology." (
http://www.access-board.gov/sec508/guide/1194.22.htm
#(l))
-
One option is to have parallel pages, one with AJAX and one without, but then you have a "back of the bus" situation which is likely to be less functional and require extra resources to maintain.
-
Things people want to do
-
Catalyst currently using AJAX in the background, interested in using it within pages for client-side processing.
-
Compare degree programs on the fly in an interactive interface
-
Simplified "control panel" to a complex process, such as a database query interface
-
One large query builder form in Request Tracker (RT) has a total of 39 pull-down select lists and nine form fields, divided into three different areas on the page
-
Current design is not intuitive, leading to users getting results they do not want
-
Do not want to lose any of the power of the interface, as awkward as it is, if we develop an alternative
-
AJAX may be helpful in situations where people have inter-related choices. Client-side processing can better present a chain of dependent choices than a complex form presenting all options for all choices.
-
Evaluating accessibility of an AJAX Web site
-
Keyboard navigable: If you can use your Web site without touching your mouse, you are probably in good shape
-
Some basic criteria and concepts from past discussions are:
-
Standards-compliant: Pages that adhere to standards are easier to design assistive and adaptive client programs for.
-
HTML elements have semantic meaning that assistive and adaptive clients pay attention to
-
Examples: Use Headings (h1, h2, h3, etc.) to make headings and use the table heading element (th) for headings of rows and columns in simple tables.
-
No mouse: A person with poor sight, no sight, or poor dexterity cannot use a mouse.
-
A linear experience: Encountering a Web page with a voice browser is a linear process, progressing through the content elements in sequence or navigating by the structure of the content. A sighted person using a graphic browser, on the other hand, can take in two-dimensional spatial arrangements of content and go directly to any visible part.
-
Alternatives: Provide alternative text for people who cannot see graphics or other non-text objects.
-
Making connections: When you can only hear a page, it can be hard to tell which text goes with which form field or which row and column a table cell is in. Simple labelling of text and form field pairs and of rows and columns enables assistive and adaptive programs to correctly present content relationships.
-
Web Accessbility Evaluation procedure (
http://www.washington.edu/computing/accessible/accessibleweb/eval_proc.html
) developed by AccessibleWeb@U provides a good basic summary of accessibility
-
Can these criteria and concepts be addressed in AJAX designs?
-
People at the UW who need accessible design
-
Dan Comden works with students at the UW with disabilities
-
Dan uses a variety of technologies to help them toward their educational objectives
-
Some UW staff have limited vision or are blind
-
Relatively small obstacles can make it very difficult for them to do their work.
-
People sometimes develop a need for adaptive and assistive technology because of injuries or health problems.
-
Want to avoid design changes that prevent an otherwise competent staff person from continuing to do their job.
-
Usability and Accessibility
-
Some approaches can make a page more usable for many people while making it less accessibility for people with disabilities
-
How do we evaluate such tradeoff situations?
-
When is accessibility an issue?
-
Alternatives to using a Web page may be readily available in some situations
-
Reporting equipment problems can be done over Web or over phone
-
Can we include accessibility in the general usability design process?
-
Where do we go from here?
-
Proposed approach
-
Develop Web sites according to current standards, such as those being assembled
-
For now, utilize client-side AJAX in optional and supplemental roles while we develop expertise on its use
-
Explore questions of how to make AJAX designs that are functionally accessible
-
Look for test project situations where we can try things.
-
Develop methods to support reasonable levels of accessibility and functionality
-
Identify best practices
-
Share design and code examples
-
Stay in active communication with each other on what we are thinking and trying.
-
Dan and Rick will be working with Scott Stephenson and the DAWG group and AIS on clarifying goals and methods for accessible design.
Back to Top