WebAIM - Web Accessibility In Mind

E-mail List Archives

Re: NOSCRIPT question

for

From: Christian Heilmann
Date: May 5, 2006 12:20PM


> In a recent article, "AJAX and Screenreaders: When Can it Work?"
> (http://www.sitepoint.com/article/ajax-screenreaders-work), James
> outlines a series of tests undertaken with specific scripts and specific
> AT (screen readers).
>
> James's conclusion?
> "I'm forced to conclude that, unless a way can be found to
> notify screen readers of updated content, AJAX techniques cannot be
> considered accessible, and should not be used on a production site
> without a truly equivalent non-script alternative being offered to users
> up-front." (NOTE, James says non-script, and not NOSCRIPT, but using
> <NOSCRIPT> is certainly a predictable and stable way of providing the
> equivalent alternative...)

I call b*******cks on that one. Sorry, a non script alternative is
something completely different than adding NOSCRIPT in the same
document. Especially with AJAX it is dead easy to only load the
content via AJAX and apply the event handlers to do so when and if
JavaScript is available. NOSCRIPT only tests if scripting is available
or not, not what is supported and the issue with AJAX apps is that
screen readers _do_ understand JavaScript but possibly don't notify
users about dynamic changes. This means that adding alternatives with
NOSCRIPT will not reach the intended audience - only those who have JS
turned off.
The matter of JavaScript, AJAX and screen readers IMHO cannot be
solved technically as we make ourselves as dependent on screen reader
types and versions as we did with browser sniffing in the times of
DHTML.
The only real way to make sure a screen reader user will not end up on
a page he cannot use is to offer the snazzy interface as an
alternative and not as a given and not use it as the basis for the app
and then hack it to become backwards compatible with NOSCRIPT and
other shenanigans.

NOSCRIPT means you mix JavaScript and HTML and that is just not a
clever move. If your application is designed to work only with
JavaScript then it is badly planned. I understand that it is very easy
to put together amazing applications with JS libraries or frameworks,
but if you want to be accessible you have to go the extra mile and
plan the app without it and add handlers and functionality if and when
the user CHOSE to do so. This is bad for marketing, but I really don't
see any other way around it.

--
Chris Heilmann
Blog: http://www.wait-till-i.com
Writing: http://icant.co.uk/
Binaries: http://www.onlinetools.org/