[thelist] AJAX and screen readers

Alastair Campbell ac at alastc.com
Fri Sep 8 15:51:57 CDT 2006

David Kaufman wrote:
> Conventional wisdom used to be: Browse your site using Lynx or another 
> purely text-based browser. 

It hasn't been that simple for quite a while. Some screen readers have 
been applying JavaScript for a while, after all, your typical person 
using a screen reader is on Windows XP with IE 6.

Lack of JavaScript and using a screen reader are *separate* issues. They 
aren't even correlated, I'd wager the stats for having JavaScript 
enabled are pretty much the same for screen reader and non-screen reader 
users. (An unprovable point, admittedly ;)

Jan, thanks for those links, for me the Juicy Studio article is the one 
to get your head around.

AJAX is not intrinsically inaccessible, it's just that the way some 
screen readers work *currently* means that the updates may not be available.

VoiceOver (OSX with Safari) works somewhat differently. I've been 
providing the VoiceOver results for Steven Faulkner's JavaScript series 
(http://juicystudio.com/article/screen-reader-mouseover.php), and 
VoiceOver reacts quite differently.

For example, using a personalised Google home page, VoiceOver will 
happily activate the controls and edit the number of articles displayed 
via AJAX, the only caveat is that activating a link will send the cursor 
to the top of the screen, as though it had reloaded the page. Pretty 
consistent from a user's point of view.

(Although it does sink these results: "Instead of using links that use 
href="#" using links with href="#nextlogicalplace" in combination with 
JS techniques will allow you to move around the page and make that 
non-linear experience more linear." unless VoiceOver on Leopard fixes 
within page links.
http://joeclark.org/ice/iceweb2006-test-results.html#Featherstone )

JAWs is in beta for version 8, which has changed to using the DOM as 
it's basis for rendering, so the landscape could change pretty rapidly.


More information about the thelist mailing list