Ajax and Accessibility
Ajax and Accessibility
Open Issues:
- Screenreaders have no way to be notified of changes to a page if the DOM is changed with Ajax
- Need to deliver standard accessible HTML content then add extra behavior on top
- Need to make sure application works without ajax, reloads page on changes etc, then add Ajax behavior to enhance the application
Resources:
- WAI-ARIA Accessible Rich Internet Applications
- http://www.w3.org/WAI/intro/aria
- http://www.w3.org/WAI/aria/faq
- http://www.w3.org/TR/wai-aria-primer/
- http://www.w3.org/TR/wai-aria-practices/
- support for keyboard only use
- clues for screenreaders etc on what options are available
- Yahoo UI has some support for WAI-ARIA in some controls
- XHTML 1
- Solution needs to be toolkit based, ie: ajaxhelper
- Besides ARIA
- Progressive Enhancement
- http://hesketh.com/publications/inclusive_web_design_for_the_future/
- Listeners added to standard semantic HTML, ie: menu built from UL of links
- Graded browser support
- C-grade semantic HTML
- A-grade full support
- X-grade unknown browsers, receive same content as A-grade, unsupported and untested (ie: alpha/beta versions of browsers)
- unobtrusive JS (listeners), behavior added to items by css id or class.
- http://www.onlinetools.org/articles/unobtrusivejavascript/
- Hijax progessive enahancement with ajax
- http://domscripting.com/blog/display/41
- First, build an old-fashioned website that uses hyperlinks and forms to pass information to the server. The server returns whole new pages with each request.
- Now, use JavaScript to intercept those links and form submissions and pass the information via XMLHttpRequest instead. You can then select which parts of the page need to be updated instead of updating the whole page.