Is using jQuery 508 compliant?

jDeveloper picture jDeveloper · Aug 30, 2011 · Viewed 8.4k times · Source

I am working on an asp.net website that needs to be section 508 compliant. I'm confused as if I'm supposed to use JavaScript or not at all.

Can I even use jQuery's slideUp()/slideDown() to show/hide sections? Can I use jQuery UI's datepicker and modal dialog boxes?

Answer

Aaron picture Aaron · Jan 9, 2012

In short yes. In general the jQuery UI team is very aware of accessibility issues and uses ARIA (http://www.w3.org/WAI/intro/aria) on most if not all of their widgets.

That being said, however being 508 compliant and "accessible" are different things. There are various standards, with "508" compliance being the least strict you can be.

99% of pages these days use dynamic JavaScript enabled controls, with varying degrees of accessiblity. Most of the problems occur when people roll their own controls instead of use a good control library like jQuery UI.

The applicable rule is this:

(l) When pages utilize scripting languages to display content, or to create interface elements, the information provided by the script shall be identified with functional text that can be read by assistive technology

jQuery's dialog widget, for example, uses markup on the page for the dialog content, so it is accessible for assistive technology (AT). Whether the AT properly interprets the content is not necessarily your concern, at least in regard to being 508 compliant. This is because there are various types of AT in combination with various OS, browsers etc.

In the case of showing and hiding content, technically the hidden content is interpretable by AT once it is shown. The issue here is how the AT knows when the DOM changes. That depends on the AT. Here you can dynamically update ARIA states to inform the AT, but the AT won't necessarily respect and/or implement the ARIA standards.