An Introduction to WAI-ARIA Dan Jackson Web Team Leader City University London.

Slides:



Advertisements
Similar presentations
JQuery UI A11Y Tips, Tricks and Pitfalls jQUery UI ARIA Hackathon 2011 Hans Hillen, TPG.
Advertisements

What is jQuery Mobile? How to use it? Doncho Minkov Telerik Corporation Technical Trainer.
Everett Zufelt Tech Lead / Accessibility Accessibility of Custom User Interface Components Using WAI-ARIA.
DataNaut, LLC 1 Building Cross-Platform Accessible Applications Using Qt Technical Overview September 2012.
Accessibility, Joomla! Markup languages and you
Steve Faulkner & Hans Hillen The Paciello Group.   Examples:
CS0004: Introduction to Programming Visual Studio 2010 and Controls.
ARIA Web Design and Development Patterns KEITH HAYS IT Accessibility Specialist CITES / ITaccess
Creating dynamic and accessible content in Drupal 7 using WAI-ARIA Sarah Pulis Web Accessibility Evangelist DruaplCon | Content Authoring |
Web 2.0 Accessibility Section 508 Coordinators Training Conference Rich Schwerdtfeger DE, SWG Accessibility Strategy and Architecture Chair: W3C WAI-ARIA.
Antranig Basman, CARET, University of Cambridge Aaron Zeckoski, CARET, University of Cambridge Josh Ryan, Arizona State University Colin Clark, Adaptive.
® IBM Software Group © 2007 IBM Corporation Accessible Rich Internet Applications and Online Services Rich Schwerdtfeger IBM Distinguished Engineer, Chair.
© 2007 IBM Corporation IBM Emerging Technologies Enabling an Accessible Web 2.0 Becky Gibson Web Accessibility Architect.
Chapter 1 Getting Started With Dreamweaver. Explore the Dreamweaver Workspace The Dreamweaver workspace is where you can find all the tools to create.
ICS 665 Jesse Abdul. jQuery UI Overview  jQuery UI javascript library Includes all UI component functionality  jQuery UI CSS framework Includes standard.
Hans Hillen (TPG) Steve Faulkner (TPG) 02 / 25 / 13 Accessibility of HTML5 and Rich Internet Applications - CSUN
ARIA intro WAI ARIA The problems being addressed  Limitations of the web pidgin  The old and new webs The ARIA solution (roles, states, properties, regions,
® IBM Software Group © 2006 IBM Corporation W3C Roadmap for ARIA … and beyond Rich Schwerdtfeger IBM Distinguished Engineer, Chair W3C WAI PF ARIA Subteam.
ARIA + HTML5 Steve Faulkner & Hans Hillen. DIVING IN TO SOME HTML5 Details/summary Dialog Spin button slider ARIA rules HTML/ARIA validation Tools.
Scripted, Tab Accessible Tree Control Hierarchical view of data via tree control. Keyboard Navigation from initially closed tree to view above with focus.
Reasonable Sakai Widgets Aaron Zeckoski Gonzalo Silverio Antranig Basman
A Model for Accessible LMS Discussion Boards November 2013 Accessing Higher Ground Part of EASI Session Series.
Chapter 11 Adding Media and Interactivity. Flash is a software program that allows you to create low-bandwidth, high-quality animations and interactive.
INTRODUCTION TO CLIENT-SIDE WEB PROGRAMMING ACM 511 ACM 262 Course Notes.
Accessibility for Rich Internet Applications: Colin Clark, Fluid Project Technical Lead, Adaptive Technology Resource Centre Techniques & Toolkits.
© 2008 IBM Corporation Emerging Internet Technologies Real World Accessibility with ARIA Becky Gibson Web Accessibility Architect.
HTML5 Accessibility Ted Drake, Yahoo! Accessibility Lab Slideshare.net/7mary4.
Accessible Web 2.0 Applications PRESENTED BY: Arne Louison, Web Developer, Governor’s Office of Employee Relations Jeff Bennett, Programmer & Usability.
© 2008 IBM Corporation Emerging Technologies Web 2.0 Accessibility with Dojo Becky Gibson Web Accessibility Architect Dojo Committer.
Real World Accessibility Becky Gibson Dojo Accessibility Lead IBM Web Accessibility Architect.
Java Application Accessibility Awareness Lawrence Najjar.
Development of Accessible E-documents and Programs for the Visually Impaired WAI-ARIA (V2011)
Yahoo! User Interface (YUI) Library Natly Mekdara.
ARIA + HTML5 Steve Faulkner & Hans Hillen The Paciello Group.
1 WEB Engineering Introduction to Electronic Commerce COMM1Q.
10 Adding Interactivity to a Web Site Section 10.1 Define scripting Summarize interactivity design guidelines Identify scripting languages Compare common.
Forms and Applications Web Design Professor Frank.
HTML5 & WAI-ARIA Forms with jQuery Validation Paul J. Adam Accessibility
Website Development with Dreamweaver
Accessible DHTML Simon Bates David Bolter ATRC
Accessibility in Flash 508 is the Law, Accessibility is the Goal.
Session 1 SESSION 1 Working with Dreamweaver 8.0.
Accessible DOM scripting with ARIA Léonie Watson
HTML | DOM. Objectives  HTML – Hypertext Markup Language  Sematic markup  Common tags/elements  Document Object Model (DOM)  Work on page | HTML.
Functional Accessibility Evaluation of Web 2.0 Applications Testing Jon Gunderson, Ph.D University of Illinois.
Building Rich Web Applications with Ajax Linda Dailey Paulson IEEE – Computer, October 05 (Vol.38, No.10) Presented by Jingming Zhang.
Avoiding the JavaScript:Void(‘’): Building Web Apps That Work Anywhere and Everywhere Jason Pitoniak Rochester Institute of Technology HighEdWeb 2008 ▪
AJAX Live Regions & Accessibility by Charles L. Chen.
UPLOAD / DOWNLOAD april  HTML5 is just the next iteration of HTML  Previous version was technically HTML 4.01, which incorporated XHTML 1.0.
Dive into Mobile Guidelines for Testing Native, Hybrid, and Web Apps Susan Hewitt, Accessibility Consultant, Deque Systems Jeanine Lineback, Accessibility.
Accessible DHTML Implementation Aaron Leventhal IBM Senior Engineer Firefox accessibility lead Firefox 1.5.
Aria Roles Informing assistive technology. What are Aria Roles A way of conveying the role or state of content or functionality. Accessible Rich Internet.
INT222 - Internet Fundamentals Shi, Yue (Sunny) Office: T2095 SENECA COLLEGE.
ARIA Support on Mobile Browsers Jonathan Avila Chief Accessibility Officer, SSB BART Group.
Week 8.  Form controls  Accessibility with ARIA.
An Introduction to the Accessibility API on Windows David MacDonald President, CanAdapt Solutions Inc.
Chapter 11 Adding Media and Interactivity. Chapter 11 Lessons Introduction 1.Add and modify Flash objects 2.Add rollover images 3.Add behaviors 4.Add.
1 Designing RIA Accessibility: A Yahoo UI (YUI) Menu Case Study Doug Geoffray & Todd Kloots Capacity Building Institute Seattle, Washington
Complex UI & Access i bility 5 tips to improve accessibility when building interactive page elements Charlie Perrins, DARE.
Becky Gibson Sr. Technical Staff Member IBM Emerging HTML5 Accessibility.
COMP 143 Web Development with Adobe Dreamweaver CC.
Testing for Accessibility with Common Screen Readers
Presented by: Bryan Garaventa, Accessibility Fellow
What Designers Need to Know about Accessibility (A11y)
Building accessible chatbots
NYS Forum IT Accessibility
Demystifying Web Content Accessibility Guidelines
Presentation transcript:

An Introduction to WAI-ARIA Dan Jackson Web Team Leader City University London

About this session 1.What is ARIA? What does it do? 2.Why do we need it? 3.Roles, States and Properties, keyboard navigation, Live Regions 4.Where ARIA we with ARIA?* Problems & Issues 5.Best practice * All my puns are rubbish.

Get the acronym out of the way early doors.... Web Accessibility Initiative. Accessible Rich Internet Applications. It’s at ‘Final Call’ draft stage, i.e. it’s not a formal specification (yet).

What does ARIA do? W3Cese “This specification provides an ontology of roles, states, and properties that define accessible user interface elements and can be used to improve the accessibility and interoperability of web content and applications. These semantics are designed to allow an author to properly convey user interface behaviors and structural information in document-level markup, to an assistive technology.” ( English It’s a W3C specification that defines a way to make Web content and Web applications more accessible to people with disabilities.

Why do we need ARIA? Some background... HTML is so, like, 1999: very limited set of interface controls. difficult communication model JavaScript is bitchin’: dynamic interactions (drag & drop, sorting, resizing) widgets (date pickers, sliders, tabs, progress bars, etc) AJAX

Why do we need ARIA? So what’s the problem? 1.Widgets are inaccessible - Assistive Technologies (AT) don’t know what they do. 2.Widgets are rarely keyboard accessible. 3.Content updated using AJAX is not reported to AT.

ARIA to the rescue! ARIA provides semantic meaning, dynamic content updates and consistent keyboard support to AT users.

Roles States and Properties Keyboard access Live Regions The technical part

Roles Roles define widgets and page structure. 2 categories: Landmark Roles Widget and Element Roles

Landmark Roles “ “The skip-links killer” Define the role of sections in the structure of a web page, e.g.: Gives AT instant access to major page components

Landmark roles

Widget & Element Roles To describe GUI widgets, elements common on desktop but not native to HTML. Examples: grid menu progressbar slider tab toolbar tree

States and Properties Provide AT with information about how elements & widgets are configured, e.g.: has a button been pressed? is an input field required? how much of my file upload is complete?

Accessibility isn’t just about screen readers.... Throw away your mouse.

Keyboard access ARIA extends the use of HTML’s tabindex attribute. tabindex = “0” : allows all elements to be accessed using keyboard. tabindex=”-1” : allows elements to be given programmatic focus without adding them to the tab order.

Eh? This is a good thing. Why? Easier navigation through document, i.e. one ‘tab stop’ per UI control. Gives keyboard access to widgets. Manages keyboard control within widgets. Establishes relationships between elements within widgets (e.g. parent/child/sibling in tree-view navigation).

Live Regions Are Way Cool Solves the problem of how to announce content updated by AJAX to screen reader users. Properties: aria-live = off | polite | assertive | rude aria-atomic = true | false aria-busy = true | false aria-relevant = additions | removals | text | all

Problems, issues: The V-Word ARIA vs. HTML 5 Is it supported? Complexity Will AT users adopt it? Where aria we with ARIA?

Issue #1: The V-Word Any Validation Nazis in the room? ARIA won’t validate with HTML 4.01, XHTML 1.0. What to do? Put up with it. Inject attribute values using JavaScript. Create a custom DTD! Use HTML 5!?

Issue #2: ARIA vs. HTML 5 ARIA Landmark Roles ARIA Properties and States HTML 5 New structural elements HTML 5 form attributes But... Many ARIA roles that have no HTML5 equivalent, e.g. application, banner, main. And… Argument over structural elements in HTML 5 = major shit-storm.

Issue #3: Is ARIA supported? To use ARIA you need a browser that both supports ARIA and is supported by a screen reader that also support ARIA. ARIA-aware OS/browser/AT combinations are some way off becoming the norm. Browsers: Firefox 1.5+, Opera 9.5+, IE8, WebKit SafariaOperaIEFF.html

Issue #3: Is ARIA supported? Screen readers ZoomText 9+ JAWS 7.1+ NVDA (free!) VoiceOver (free!) FireVox (free!) Orca JavaScript Libraries Jquery UI YUI Dojo ExtJS GWT Glow (BBC)

Issue #4: Complexity... it’s not exactly plug’n’play! It’s a task just to set up the development environment. Key board navigation requires complex JavaScript coding.

Issue #5: Do AT users update? Screen reader? Mostly. Browser? Questionable.

...it’s not all doom and gloom Support is growing. You can use ARIA to improve your website right now. (Landmark Roles, Live Regions)

Best practice WAI-ARIA is just one ‘layer’ of accessibility. Don’t withhold content from users without JavaScript (use HIJAX). Best practice techniques for front-end web development, & layer ARIA on where possible.

Resources uction-to-wai-aria/ Probably the best introductory article online. Excellent set of ARIA test cases. Great all round accessibility resource, with emphasis on ARIA. Understandable W3C introduction to ARIA.