Can\'t we all just get along? Introducing Ajax and making a site accessible each present their own unique challenges to development teams. Most see these as being in direct competition with each other. But, by embracing some new development approaches they can end up being complementary. We will look at how best to tackle making Ajax-based features accessible and point out some of the added benefits that come with taking such approaches.
10. WCAG 1.0
6.3 Ensure that pages are usable when
scripts, applets, or other programmatic
objects are turned off or not supported. If
this is not possible, provide equivalent
information on an alternative accessible page.
14. Progressive Enhancement
• Content is king!
• Start with POSH - Plain Old Semantic HTML
• Semantic markup to supply meaning to
content
15. Progressive Enhancement
• Content is king!
• Start with POSH - Plain Old Semantic HTML
• Semantic markup to supply meaning to
content
• Serve base content to everyone
16. Progressive Enhancement
• Content is king!
• Start with POSH - Plain Old Semantic HTML
• Semantic markup to supply meaning to
content
• Serve base content to everyone
• Add presentation and behavior to enhance
experience
42. Hijax
• Term coined by Jeremy Keith
• Bulletproof Ajax
(http://bulletproofajax.com/)
• Pull in portion of page via Ajax when XHR
is supported
• Re-use same portion when a full page
refresh is required
64. Linearization
State/ Zip/Postal
Examples
Province Code
No Yes United Kingdom, France, Germany
Drop Down Yes United States, Canada, Australia
Input Yes
No No Ireland
75. Tab Index
Focusable with mouse or
Tab Index Navigable via tab key
element.focus()
Follows default behavior of
Follows default behavior of
Not present element (only form controls
element
and anchors receive focus)
Tabindex value directly
>0 Yes specifies where this element
is positioned in the tab order.
In tab order relative to
0 Yes element’s position in
document
-1 Yes Not in tab order.
http://www.dojotoolkit.org/book/export/html/118
92. Replicating the Desktop
• <div> can be a button
• <span> can be a slider
• Need a better API
• Leverage accessibility support in the OS
93. WAI - ARIA
• W3C Web Accessibility Initiative
Accessible Rich Internet Applications
• Adds hooks into accessibility API of the
platform
• Define Roles and States so scripts can
interact with AT APIs
• http://www.w3.org/WAI/
107. Testing
• Do user testing with Assistive Technologies (AT)
• Developers @#$% at testing interfaces
• Test with AT to validate decisions
• Test to make sure its usable
108. Testing
Just Ask: Integrating Accessibility
Throughout Design
Shawn Lawton Henry
http://www.uiaccess.com/accessucd/
113. Color Contrast
• Color Oracle:
http://colororacle.cartography.ch/
• Colour Analyzer:
http://juicystudio.com/services/colourcontrast.php
114.
115.
116.
117.
118.
119. Getting Started
• Start with new features
• Learn the patterns
• Don’t make things worse
• Apply lessons learned when re-factoring existing code
120. Move away from:
Making it accessible
Move towards:
Keeping it accessible
121. “For most people, technology
makes things easier. For people
with disabilities, technology
makes things possible.”
- President’s Council on Disability
122. Traffic Signs
• Traffic sign images are from the
Manual of Traffic Signs, by
Richard C. Moeur
• http://www.trafficsign.us