« In search of... a perfect plugin technique | Main | New Adobe Accessibility Blog »

September 16, 2005

AJAX Access

Pete at standards-schmandards.com put together a post on AJAX and accessibility and an example back in March, but it has attracted some attention on WebAIM discussion list. Pete's example is a useful one, but there are obviously limits to how far this model can be extended. On an web application to book a flight there are more bits of information than can be easily communicated in alert dialogs, and if the user needs to interact with the new information in a dialog, additional difficulties present. Still, a useful technique to keep in the back pocket, and use when appropriate.

It is and will continue to be very interesting to see how screen readers and web developers handle increasingly dynamic content. The issues that we've dealt with in "traditional" web accessibility have been largely providing equivalents, associations, and structure, but with AJAX content the importance of notification is amplified. When developing content, we need to ask whether a user who is unable to view the entire screen will know if a change has occurred on the page and if so, whether it is reasonable to expect that he will know where on the page that change occurred. You might be able to expect that a screen reader user will run into a piece of changed content if the change takes place immediately downstream of the point of interaction, but changing content at the top of the page with a link halfway down the page, or even right above the interaction point, is problematic for many users.

Whether dynamically changing elements trigger a full, partial, or no screen update for the screen reader is up to the screen reader developers. Some types of page changes make this happen, some don't. A huge problem for AJAX, this is also arguably the toughest challenge in accessible Flash development. If you are interested in what is difficult, possible, or hopeful in accessible AJAX development, take a look at accessible Flash – there are strong parallels.

Posted by akirkpatrick at September 16, 2005 08:33 AM

Comments

Except that Ajax folks are building on skills they already have, Flash requires you to learn something new _and_ you have to pay for the pleasure. I am more interested in the mix and match of the techniques that sIFR offers where you can have Flash but you have a nice text alternative layer below it.

Posted by: Jesse at September 16, 2005 12:19 PM

Not true, Jesse. Ajax requires new skills as well, when you can get it to work at all.

Sifr is an interesting approach, but it does not deal with dynamic content at all. The real challenge is building Rich Internet Apps that are accessible to all.

At a minimum, we need to see better practice on keyboard access, labels and AT interoperability.

To be fair, across the board, there is a real challenge with the single screen model of the RIA and the screen reader that will affect Flash, AJAX and other technologies down the road. How do we account for a change on one part of the screen updating other content on another part? How do we consistently let users know what a control is or does when developers have a nasty habit of constantly using custom controls? These are challenges that Flash has been grappling with for a while. AJAX still has to address more basic issues such as keyboard access and screen reader support.

Cheers,
Bob

Posted by: Bob Regan at September 16, 2005 08:15 PM

"Not true, Jesse. Ajax requires new skills as well, when you can get it to work at all."

What? You aren't being serious are you?

"Sifr is an interesting approach, but it does not deal with dynamic content at all. The real challenge is building Rich Internet Apps that are accessible to all."

I think sIFR demonstrates that you can use JS to make use of flash outside of the cheesy games. You could use JS it to enhance your 'Rich Internet App' - but would it be more or less 'Rich' than what Basecamp demonstrates? Or Inman's new AJAX toy - Mint. That looks just as good as any Flash presentation of server stats, not sure how accessible it is.

"At a minimum, we need to see better practice on keyboard access, labels and AT interoperability."

Yup.

"AJAX still has to address more basic issues such as keyboard access and screen reader support."

What AJAX are you talking about? Sure it is hard to figure out what JAWS does with new content when the browser doesn't refresh the page to receive/display new information but all the content is in a simple form that can easily be used to provide an alternate content site for users with adaptive technology.

Flash could make it easier by working with the adaptive technology venders to provide an accessible plug-in that would assist the developer in making content more accessible. AJAX can't and will likely have a harder time with adaptive technology venders than Flash... but who knows?

Posted by: Jesse at September 19, 2005 06:07 AM

Two conferences will be dedicated to Flash, Ajax and accessibility during the Webdesign International Festival (France, February 2&3rd 2006). Bob, Andrew, would you be interested in coming and visit us?!!

Posted by: Delphine at October 13, 2005 07:59 AM

Thanks for pointing that out, it is easy to forget that when we develpo, that we know what changes we ae looking for, and sometimes it is easy to forget that someone who is unfamiliar with our site navigation practices, using an 800 x 600 screen may miss exactly what we are trying to point out to them.
It is often a dumbfounding event to watch someone else unfamiliar with our site to surf through it, and miss the meat of the info!
Perhaps some loose standards will be followed and ajax styled flash navigation will become more intuitive for surfers in the future and it won't be as big of a deal.

Posted by: Steve at November 17, 2005 07:15 PM

I will be in France during that time visiting family would love to attend those two confrences Delphine can you send me some info?

Posted by: Ashley Bowers at November 23, 2005 02:06 AM

This is kind of an old post on which to comment, but here are my two cents.

Developing accessible Flash does build on skills you already know because ActionScript is based on ECMA Script. If you know enough JavaScript to pull things off with AJAX, you can easily develop in Flash ActionScript. Heck, that's how I wound up doing what I do. (I even used to describe myself to collegues as the "Flash-hating Flash guy.")

Following is a URL for an accessible Flash feature on which I worked that demonstrates capabilities of Flash accessibility that I don't believe to be possible with AJAX/DHTML at this time.

http://www.eduplace.com/kids/sv/books/content/wordsort/

It's a click-and-drag sorting game that is keyboard and screen reader accessible.

With Flash, you can dynamically control what is silent and what is voiced by the screen reader. When a screen reader user selects a word to sort, we silence all objects on the stage except for those objects directly relevant to the sorting task (the selected word, the active sorting category bins, and the words which have already been sorted into the active sorting category bins). This is similar to the concept of progressive disclosure that Bob mentioned in his earlier posts regarding the accessible version of jkrowling.com. To acheive the same effect in AJAX/DHTML, you'd have to set the display CSS property of the objects you wish to be silent to display:none, which isn't really the same.

I believe this is the kind of challenge about which Andrew is speaking in this post.

Posted by: Michael Jordan at December 17, 2005 01:16 PM

I think Flash has its attractions and great uses for accessibility, however, it cannot be considered a replacement for AJAX.
I suggest those interested to have a look at DHTML Accessibility framework,
http://www.mozilla.org/access/dhtml
which so far is the only viable solution to resolving accessibility-related challenges that dynamic content poses. In order for this technology to work properly, both leading screen readers already provide varying level of support and I am hoping that we will see more of it.
Watch out for related presentations during the upcoming CSUN conference, http://www.csun.edu/cod.

Posted by: Victor Tsaran at December 19, 2005 06:27 PM