© 2008 ibm corporation ibm emerging technologies taming web 2.0 accessibility using the dojo open...

29
© 2008 IBM Corporation IBM Emerging Technologies Taming Web 2.0 Accessibility Using the Dojo Open Source Toolkit Becky Gibson Web Accessibility Architect

Post on 19-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

© 2008 IBM Corporation

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using theDojo Open Source Toolkit

Becky GibsonWeb Accessibility Architect

2

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Web 2.0 Accessibility Concerns Solving Web 2.0 Issues Accessible Rich Internet Applications (ARIA) Dojo JavaScript Open Source Toolkit How Dojo Addresses Accessibility Demos

Agenda

3

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Web 2.0 Accessibility Concerns

Rich Interface controls–Reliance on Mouse

–Lack of Semantics Incremental Updates via Ajax Changes in focus Excessive Navigation via Tab key Content aggregation from various resources

(Mashups) Multimedia

–Lack of captioning

–Interaction issues Paradigm Shift

4

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Solving Web 2.0 Accessibility Issues

Provide Accommodations for–Vision

–Hearing

–Cognitive Semantics & identification Navigation & keyboard support

5

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Accessible Rich Internet Applications to the Rescue!

6

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Accessible Rich Internet Applications (ARIA)

Addresses Web 2.0 Accessibility Issues Developed at IBM and donated to W3C

–Web Accessibility Initiative (WAI) Protocols & Formats Group

–Nearing last call draft Implemented in Firefox browser

–Being implemented in Opera 9.5

–Support just announced for IE 8 Supported by Window-Eyes & JAWS screen readers Used by IBM, Dojo, AOL, Yahoo, Google, SAP, ….

7

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

ARIA Details

Add role semantics to scripted user interface (UI) elements

Update state information dynamically Make items focusable via tabindex attribute Add keyboard event handling

–Mimic the keyboard behavior of the rich client UI

–Minimize tab key navigation Add live region information and notification* to

support Ajax

*Live region support coming in Firefox 3

8

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

ARIA Example - Tree

Role = tree(on outer container)

Role = treeitemexpanded=true(on open Africa node)

Role = treeitemselected=true(on highlighted Egypt child node with no children)

Role = treeitemexpanded=false(on closed Australia node)

9

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

ARIA Live Regions

Perceivable sections are identified with region role Live indicates region is updated

–Values of: Off, Polite, Assertive, Rude Atomic identifies the extent of updates

–True – entire region is updated and relevant

–False – only changed element needs to be presented to user Controls identifies the element which triggers an

update

10

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

ARIA Examples - Live Region

Editing auto save notification– live=polite; atomic=true;

Server maintenance notification–Live=assertive; atomic=true;

New mail - speak new entries–Live=polite; atomic=false;

11

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

12

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Keyboard Support

Implement focus handling via tabindex attribute Add key event handlers to implement navigation

–Use tab key to navigate between components

–Arrow and other key navigation within a component

Keep keyboard and mouse interaction in-sync Set focus to elements, do NOT simulate focus via

CSS DHTML Style Guide group is defining widget

behaviors

13

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Dojo - Open Source JavaScript Toolkit

“Easy” Ajax Data Binding Full event system Browser abstraction layer User Interface Widgets Dual Licensed

– Academic Free License v2.1

– BSD License Dojo 1.0 available in November, 2007 Dojo 1.1 shipping in March, 2008

14

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Core Widget Set (dijit)

Accessible Internationalized Customizable Look and Feel Developer Documentation

–API–User Manual

Supported Browsers–Firefox 2.0, Firefox 3 in progress– IE 6+–Safari 3

Data Binding–Tree, Grid*, Select

*Grid is in dojox (dojo extensions)

15

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Dojo Core Widgets

Form Widgets Layout Widgets Advanced Widgets

16

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Form Widgets

Button, Dropdown Button, Combo Button Checkbox, Radio ComboBox, Filtering Select Textbox Currency & Integer Validation Textboxes Resizable Textarea Slider Integer Spinner Inline Editbox Dropdown Calendar

17

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Layout Widgets

Accordion Container Content Pane Dialog Border Container Page Container Split Container Tab Container Title Pane

18

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Advanced Widgets

Color Palette Context Menu Rich Text Editor Progress Bar Toolbar Tooltip, Tooltip Dialog Tree

19

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Dojo 1.0.2/1.1 Core Widget Accessibility

ARIA Specification Implemented–Fully keyboard accessible in Firefox and Internet Explorer

–Screen reader accessible in Firefox Work in Operating System High Contrast mode Work with images off No accessible support for Drag and Drop (yet)

–Drag and drop functionality must be duplicated via alternate mechanism

20

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Keyboard Support in Dojo

Extended tabindex (IE, FF, Opera 9.5, HTML5) Keyboard event normalization Keyboard navigation widget mixin Functions for finding elements in the tab order

21

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

High Contrast Detection & Support

Detect high contrast mode Detect images off mode (FF only) dijit_a11y class to trigger styles Provide text alternatives for CSS Background

images No hard coded font sizes

22

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Dojo Demo(pre-recorded demos at http://www.weba11y.com/demos)

23

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Application is More than the Sum of Parts

Implement overall application navigation Add ContentPanes into the tab order as necessary Check for accessibility attributes

–optionsTitle on ComboButton Create content in appropriate source code order

24

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Incorrect Example - BorderLayout

<div dojoType="dijit.layout.BorderContainer" design="sidebar" > <div dojoType="dijit.layout.ContentPane" region="top" splitter="true">

top bar </div> <div dojoType="dijit.layout.ContentPane" region="bottom" splitter="true”>

bottom bar </div> <div dojoType="dijit.layout.ContentPane" region="center">

main content </div></div>

INCORRECT source code order, bottom region should be below main content!

25

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Rendered BorderLayout

top

bottom

Main content

Correct tab order is top, main content, bottom. Code from previous page would create the incorrect reading order of top, bottom, main content.

26

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Correct BorderLayout Source Code Order

<div dojoType="dijit.layout.BorderContainer" design="sidebar" > <div dojoType="dijit.layout.ContentPane" region="top" splitter="true">

top bar </div> <div dojoType="dijit.layout.ContentPane" region="center">

main content </div> <div dojoType="dijit.layout.ContentPane" region="bottom" splitter="true”>

bottom bar </div></div>

27

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Additional Web 2.0 Accessibility Challenges

ARIA spec not yet a standard – planned for 2008 No ARIA support in Internet Explorer - Coming in IE8! No tabindex support in Safari (yet) – thus no keyboard

support Assistive Technology support needs to evolve

– Issues with virtual browsing and interactive mode in screen readers

–Additional support for live regions

“The journey of a thousand miles starts with a single step. “

28

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Summary - Web 2.0 CAN be Tamed!

Web is dynamic and constantly evolving Accessibility of Web 2.0 is possible through

–Best practices and thoughtful design

–Updated Technologies such a ARIA

–Accessibility integrated into toolkits such as Dojo

–Embracing of Accessibility technologies by key Web players

29

IBM Emerging Technologies

Taming Web 2.0 Accessibility Using Dojo | March 2008 © 2008 IBM Corporation

Resources Becky’s Accessibility Presentations and Papers

– http://www.weba11y.com/Presentations/presentations.html ARIA Roadmap, Best Practices, Primer, Specifications

– http://www.w3.org/wai/pf Mozilla Developer Center - Firefox ARIA Information

– http://developer.mozilla.org/en/docs/Accessible_DHTML Mailing list for ARIA issues

– http://lists.w3.org/Archives/Public/wai-xtech/ Dojo

– Home - http://www.dojotoolkit.org/

– Book - http://www.dojotoolkit.org/book/dojo-book-1-0 Accessibility Sections of Dojo Book

– A11y info included on each dijit page http://www.dojotoolkit.org/book/dojo-book-0-9/part-2-dijit-0

– Creating Accessible Widgets

– Testing Accessible Widgets DHTML Style Guide Draft

– http://dev.aol.com/dhtml_style_guide