SlideShare a Scribd company logo
1 of 32
Accessible Javascript
                              using Frameworks
                                Dirk Ginader
                               http://ginader.de




Friday, March 6, 2009
What makes Javascript
                           “Accessible”?

                        • the content of the page is at least as
                          accessible with Javascript as without
                        • nothing is being withheld from users
                          without Javascript




Friday, March 6, 2009
Without accessible
                         Markup there’s no
                        accessible Javascript


Friday, March 6, 2009
• first and foremost a Website needs to
                          works without Javascript

                        • do we use the best matching HTML
                          Elements for each Part of the Page?

                        • is the Page perfectly logic, understandable
                          and usable without CSS?




Friday, March 6, 2009
CSS does not always
                          make beautiful


Friday, March 6, 2009
• badly used CSS is able to make a page
                          inaccessible long before Javascript can

                        • display:none and visibility:hidden are not
                          generally evil but sadly quite often

                        • hidden elements will be revealed when
                          you :hover over them - nice! But what
                          happens if you don’t use a mouse?

                        • CSS is for design - not for interaction!
Friday, March 6, 2009
Interaction is handled
                            on the Server


Friday, March 6, 2009
• anything you wanna achieve using Javascript
                          you need to solve without first

                        • a Reload may not be cool anymore but it’s
                          exactly as necessary as it was 10 years ago

                        • if that is taken care of we can add some
                          magic




Friday, March 6, 2009
Javascript is the icing
                             on the cake


Friday, March 6, 2009
• Javascript is another layer above HTML and
                          CSS

                        • existing interaction elements like links or
                          buttons get hijacked and changed to do
                          their job in the Browser instead on the
                          server

                        • new interaction elements, that offer
                          functionality only available with Javascript,
                          need to be created by Javascript (use
                          tabable elements only!)

Friday, March 6, 2009
another layer:
                           different CSS if
                        Javascript is available


Friday, March 6, 2009
• YAY! We got Javascript! Let’s dig up the
                            DOM completely!

                        • we better leave the changes to someone
                            that does that job better and faster than
                            we can: CSS

                        • a simple 1 liner in the head does the+= ” js”;
                                                                trick:
                          document.documentElement.className

                        •   by adding .js in front of existing selectors you can
                            now define Javascript aware CSS


Friday, March 6, 2009
Screenreaders don’t
                        understand Javascript
                             anyway...


Friday, March 6, 2009
• is there still someone believing that?
                        • most Screenreaders actually handle
                          Javascript very well!

                        • they just don’t know all the time


Friday, March 6, 2009
• inform Screenreaders about what’s
                          happening

                        • a logic and understandable workflow is the
                          easiest thing to test without a Screenreader

                        • focus() the right element
                        • when updating the DOM it might be
                          necessary to force the Screenreader’s
                          virtual buffer to refresh by updating a
                          hidden Form field

Friday, March 6, 2009
Accessibility
                             !=
                        Screenreader


Friday, March 6, 2009
• is the website usable without a mouse?
                        • the tab key is one of the most important
                          navigation tools

                        • do elements react on :hover and :focus?


Friday, March 6, 2009
• what happens if a page gets scaled up or
                          down?

                        • screen magnifiers only show a very small
                          part of the screen

                        • does really every understand what happens
                          on the page right now?




Friday, March 6, 2009
How do
                        Javascript Frameworks
                            help with this?


Friday, March 6, 2009
• reducing the pain of Javascript cross
                          browser issues by unifying their APIs

                        • the right timing counts: onDOMReady
                        • don’t reinvent the wheel every day: ready
                          made components help!




Friday, March 6, 2009
• the components of the big JS frameworks
                          are usually tested extensively against
                          stability, usability and accessibility

                        • testing against Screenreaders makes sense
                          with “real” Screenreader users only




Friday, March 6, 2009
Examples



Friday, March 6, 2009
without Javascript
Friday, March 6, 2009
with Javascript
Friday, March 6, 2009
with Javascript
Friday, March 6, 2009
with Javascript
Friday, March 6, 2009
with Javascript
Friday, March 6, 2009
http://uk.tv.yahoo.com/

Friday, March 6, 2009
Reduce to the Max
Friday, March 6, 2009
More Examples

                        • http://code.google.com/p/google-axsjax/
                        • http://scriptingenabled.org/
                        • http://icant.co.uk/easy-youtube


Friday, March 6, 2009
To not completely think
                  through Accessibility is
                      as worse as not
                   thinking about it at all

Friday, March 6, 2009
Friday, March 6, 2009

More Related Content

What's hot

บรรณานุกรม
บรรณานุกรมบรรณานุกรม
บรรณานุกรม
IShadow' Leo'os
 

What's hot (20)

Career on WordPress: How to get started with WordPress
Career on WordPress: How to get started with WordPressCareer on WordPress: How to get started with WordPress
Career on WordPress: How to get started with WordPress
 
Progressing JavaScript and Apps the Web way…
 Progressing JavaScript and Apps the Web way…  Progressing JavaScript and Apps the Web way…
Progressing JavaScript and Apps the Web way…
 
Having Fun with Local WordPress Development
Having Fun with Local WordPress DevelopmentHaving Fun with Local WordPress Development
Having Fun with Local WordPress Development
 
Asynchrony on the web
Asynchrony on the webAsynchrony on the web
Asynchrony on the web
 
Prawn: Creating PDF in Ruby
Prawn: Creating PDF in RubyPrawn: Creating PDF in Ruby
Prawn: Creating PDF in Ruby
 
Hacking the Mid-End (Great Lakes Ruby Bash Edition)
Hacking the Mid-End (Great Lakes Ruby Bash Edition)Hacking the Mid-End (Great Lakes Ruby Bash Edition)
Hacking the Mid-End (Great Lakes Ruby Bash Edition)
 
Web Standards and Accessibility
Web Standards and AccessibilityWeb Standards and Accessibility
Web Standards and Accessibility
 
Cache Money Business
Cache Money BusinessCache Money Business
Cache Money Business
 
Blazor - C# for the web
Blazor - C# for the webBlazor - C# for the web
Blazor - C# for the web
 
Conclusion Of The Course
Conclusion Of The CourseConclusion Of The Course
Conclusion Of The Course
 
Keeping lab notes as a software developer
Keeping lab notes as a software developerKeeping lab notes as a software developer
Keeping lab notes as a software developer
 
Fixing web and JS gaps
Fixing web and JS gapsFixing web and JS gaps
Fixing web and JS gaps
 
NodeConfLondon - Making ES6 happen with ChakraCore and Node
NodeConfLondon - Making ES6 happen with ChakraCore and NodeNodeConfLondon - Making ES6 happen with ChakraCore and Node
NodeConfLondon - Making ES6 happen with ChakraCore and Node
 
Responsive Design
Responsive DesignResponsive Design
Responsive Design
 
บรรณานุกรม
บรรณานุกรมบรรณานุกรม
บรรณานุกรม
 
Leveling up your JavaScipt - DrupalJam 2017
Leveling up your JavaScipt - DrupalJam 2017Leveling up your JavaScipt - DrupalJam 2017
Leveling up your JavaScipt - DrupalJam 2017
 
Functional javascript
Functional javascriptFunctional javascript
Functional javascript
 
Make mobile web apps rock
Make mobile web apps rockMake mobile web apps rock
Make mobile web apps rock
 
Have we forgotten how to program? - Tunisian WebDev MeetUp
Have we forgotten how to program? - Tunisian WebDev MeetUpHave we forgotten how to program? - Tunisian WebDev MeetUp
Have we forgotten how to program? - Tunisian WebDev MeetUp
 
Copass + Ruby on Rails = <3 - From Simplicity to Complexity
Copass + Ruby on Rails = <3 - From Simplicity to ComplexityCopass + Ruby on Rails = <3 - From Simplicity to Complexity
Copass + Ruby on Rails = <3 - From Simplicity to Complexity
 

Similar to Accessible Javascript using Frameworks - Barcamp London 5

Firefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web InnovatorsFirefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web Innovators
Dietrich Ayala
 
Unobtrusive javascript
Unobtrusive javascriptUnobtrusive javascript
Unobtrusive javascript
Lee Jordan
 
Inleiding tot CHI
Inleiding tot CHIInleiding tot CHI
Inleiding tot CHI
Erik Duval
 

Similar to Accessible Javascript using Frameworks - Barcamp London 5 (20)

Cool shits javascript can do
Cool shits javascript can doCool shits javascript can do
Cool shits javascript can do
 
Improving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceImproving Drupal's Page Loading Performance
Improving Drupal's Page Loading Performance
 
Learning To Love IE6
Learning To Love IE6Learning To Love IE6
Learning To Love IE6
 
Drupal CDN integration: easier, more flexible and faster!
Drupal CDN integration: easier, more flexible and faster!Drupal CDN integration: easier, more flexible and faster!
Drupal CDN integration: easier, more flexible and faster!
 
Jazz up your JavaScript: Unobtrusive scripting with JavaScript libraries
Jazz up your JavaScript: Unobtrusive scripting with JavaScript librariesJazz up your JavaScript: Unobtrusive scripting with JavaScript libraries
Jazz up your JavaScript: Unobtrusive scripting with JavaScript libraries
 
Foundation of Web Application Developmnet - XHTML
Foundation of Web Application Developmnet - XHTMLFoundation of Web Application Developmnet - XHTML
Foundation of Web Application Developmnet - XHTML
 
Hyves: Mobile app development with HTML5 and Javascript
Hyves: Mobile app development with HTML5 and JavascriptHyves: Mobile app development with HTML5 and Javascript
Hyves: Mobile app development with HTML5 and Javascript
 
No Really, It's All About You
No Really, It's All About YouNo Really, It's All About You
No Really, It's All About You
 
Firefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web InnovatorsFirefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web Innovators
 
Unobtrusive Javascript - SD.rb 2007
Unobtrusive Javascript - SD.rb 2007Unobtrusive Javascript - SD.rb 2007
Unobtrusive Javascript - SD.rb 2007
 
Unobtrusive javascript
Unobtrusive javascriptUnobtrusive javascript
Unobtrusive javascript
 
JSDay 2013 - Practical Responsive Web Design
JSDay 2013 - Practical Responsive Web DesignJSDay 2013 - Practical Responsive Web Design
JSDay 2013 - Practical Responsive Web Design
 
A Period of Transition
A Period of TransitionA Period of Transition
A Period of Transition
 
SMX Advanced: Landing Page Myths
SMX Advanced: Landing Page MythsSMX Advanced: Landing Page Myths
SMX Advanced: Landing Page Myths
 
3 Landing Page Myths Debunked
3 Landing Page Myths Debunked3 Landing Page Myths Debunked
3 Landing Page Myths Debunked
 
The Shape of Speed
The Shape of SpeedThe Shape of Speed
The Shape of Speed
 
Atlassian - A Different Kind Of Software Company
Atlassian - A Different Kind Of Software CompanyAtlassian - A Different Kind Of Software Company
Atlassian - A Different Kind Of Software Company
 
Whatever happened to Progressive Enhancement?
Whatever happened to Progressive Enhancement?Whatever happened to Progressive Enhancement?
Whatever happened to Progressive Enhancement?
 
Responsive Web Design & Workflow
Responsive Web Design & WorkflowResponsive Web Design & Workflow
Responsive Web Design & Workflow
 
Inleiding tot CHI
Inleiding tot CHIInleiding tot CHI
Inleiding tot CHI
 

More from Dirk Ginader

HTML5 Dev Conf - Sass, Compass & the new Webdev tools
HTML5 Dev Conf - Sass, Compass &  the new Webdev toolsHTML5 Dev Conf - Sass, Compass &  the new Webdev tools
HTML5 Dev Conf - Sass, Compass & the new Webdev tools
Dirk Ginader
 
Sass, Compass and the new tools - Open Web Camp IV
Sass, Compass and the new tools - Open Web Camp IVSass, Compass and the new tools - Open Web Camp IV
Sass, Compass and the new tools - Open Web Camp IV
Dirk Ginader
 
Javascript done right - Open Web Camp III
Javascript done right - Open Web Camp IIIJavascript done right - Open Web Camp III
Javascript done right - Open Web Camp III
Dirk Ginader
 
Javascript done right
Javascript done rightJavascript done right
Javascript done right
Dirk Ginader
 
Accessible Javascript mit Frameworks - Best of Accessibility 2008
Accessible Javascript mit Frameworks - Best of Accessibility 2008Accessible Javascript mit Frameworks - Best of Accessibility 2008
Accessible Javascript mit Frameworks - Best of Accessibility 2008
Dirk Ginader
 

More from Dirk Ginader (15)

Making your Angular.js Application accessible
Making your Angular.js Application accessibleMaking your Angular.js Application accessible
Making your Angular.js Application accessible
 
Teach your Browser new tricks
Teach your Browser new tricksTeach your Browser new tricks
Teach your Browser new tricks
 
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
Let Grunt do the work, focus on the fun! [Open Web Camp 2013]
 
Let Grunt do the work, focus on the fun!
Let Grunt do the work, focus on the fun!Let Grunt do the work, focus on the fun!
Let Grunt do the work, focus on the fun!
 
HTML5 Dev Conf - Sass, Compass & the new Webdev tools
HTML5 Dev Conf - Sass, Compass &  the new Webdev toolsHTML5 Dev Conf - Sass, Compass &  the new Webdev tools
HTML5 Dev Conf - Sass, Compass & the new Webdev tools
 
Sass, Compass and the new tools - Open Web Camp IV
Sass, Compass and the new tools - Open Web Camp IVSass, Compass and the new tools - Open Web Camp IV
Sass, Compass and the new tools - Open Web Camp IV
 
Javascript done right - Open Web Camp III
Javascript done right - Open Web Camp IIIJavascript done right - Open Web Camp III
Javascript done right - Open Web Camp III
 
The accessibility features of Yahoo! Finance
The accessibility features of Yahoo! FinanceThe accessibility features of Yahoo! Finance
The accessibility features of Yahoo! Finance
 
Javascript done right
Javascript done rightJavascript done right
Javascript done right
 
Javascript auf Client und Server mit node.js - webtech 2010
Javascript auf Client und Server mit node.js - webtech 2010Javascript auf Client und Server mit node.js - webtech 2010
Javascript auf Client und Server mit node.js - webtech 2010
 
the 5 layers of web accessibility - Open Web Camp II
the 5 layers of web accessibility - Open Web Camp IIthe 5 layers of web accessibility - Open Web Camp II
the 5 layers of web accessibility - Open Web Camp II
 
Das Web Als Datenbank Mit Yql Und Pipes
Das Web Als Datenbank Mit Yql Und PipesDas Web Als Datenbank Mit Yql Und Pipes
Das Web Als Datenbank Mit Yql Und Pipes
 
Die 5 Ebenen Barriererfreier Web Entwicklung
Die 5 Ebenen Barriererfreier Web EntwicklungDie 5 Ebenen Barriererfreier Web Entwicklung
Die 5 Ebenen Barriererfreier Web Entwicklung
 
Accessible Javascript mit Frameworks - Best of Accessibility 2008
Accessible Javascript mit Frameworks - Best of Accessibility 2008Accessible Javascript mit Frameworks - Best of Accessibility 2008
Accessible Javascript mit Frameworks - Best of Accessibility 2008
 
Accessible Javascript - Barcamp Brighton 2
Accessible Javascript - Barcamp Brighton 2Accessible Javascript - Barcamp Brighton 2
Accessible Javascript - Barcamp Brighton 2
 

Recently uploaded

Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
AnaAcapella
 

Recently uploaded (20)

How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 

Accessible Javascript using Frameworks - Barcamp London 5

  • 1. Accessible Javascript using Frameworks Dirk Ginader http://ginader.de Friday, March 6, 2009
  • 2. What makes Javascript “Accessible”? • the content of the page is at least as accessible with Javascript as without • nothing is being withheld from users without Javascript Friday, March 6, 2009
  • 3. Without accessible Markup there’s no accessible Javascript Friday, March 6, 2009
  • 4. • first and foremost a Website needs to works without Javascript • do we use the best matching HTML Elements for each Part of the Page? • is the Page perfectly logic, understandable and usable without CSS? Friday, March 6, 2009
  • 5. CSS does not always make beautiful Friday, March 6, 2009
  • 6. • badly used CSS is able to make a page inaccessible long before Javascript can • display:none and visibility:hidden are not generally evil but sadly quite often • hidden elements will be revealed when you :hover over them - nice! But what happens if you don’t use a mouse? • CSS is for design - not for interaction! Friday, March 6, 2009
  • 7. Interaction is handled on the Server Friday, March 6, 2009
  • 8. • anything you wanna achieve using Javascript you need to solve without first • a Reload may not be cool anymore but it’s exactly as necessary as it was 10 years ago • if that is taken care of we can add some magic Friday, March 6, 2009
  • 9. Javascript is the icing on the cake Friday, March 6, 2009
  • 10. • Javascript is another layer above HTML and CSS • existing interaction elements like links or buttons get hijacked and changed to do their job in the Browser instead on the server • new interaction elements, that offer functionality only available with Javascript, need to be created by Javascript (use tabable elements only!) Friday, March 6, 2009
  • 11. another layer: different CSS if Javascript is available Friday, March 6, 2009
  • 12. • YAY! We got Javascript! Let’s dig up the DOM completely! • we better leave the changes to someone that does that job better and faster than we can: CSS • a simple 1 liner in the head does the+= ” js”; trick: document.documentElement.className • by adding .js in front of existing selectors you can now define Javascript aware CSS Friday, March 6, 2009
  • 13. Screenreaders don’t understand Javascript anyway... Friday, March 6, 2009
  • 14. • is there still someone believing that? • most Screenreaders actually handle Javascript very well! • they just don’t know all the time Friday, March 6, 2009
  • 15. • inform Screenreaders about what’s happening • a logic and understandable workflow is the easiest thing to test without a Screenreader • focus() the right element • when updating the DOM it might be necessary to force the Screenreader’s virtual buffer to refresh by updating a hidden Form field Friday, March 6, 2009
  • 16. Accessibility != Screenreader Friday, March 6, 2009
  • 17. • is the website usable without a mouse? • the tab key is one of the most important navigation tools • do elements react on :hover and :focus? Friday, March 6, 2009
  • 18. • what happens if a page gets scaled up or down? • screen magnifiers only show a very small part of the screen • does really every understand what happens on the page right now? Friday, March 6, 2009
  • 19. How do Javascript Frameworks help with this? Friday, March 6, 2009
  • 20. • reducing the pain of Javascript cross browser issues by unifying their APIs • the right timing counts: onDOMReady • don’t reinvent the wheel every day: ready made components help! Friday, March 6, 2009
  • 21. • the components of the big JS frameworks are usually tested extensively against stability, usability and accessibility • testing against Screenreaders makes sense with “real” Screenreader users only Friday, March 6, 2009
  • 29. Reduce to the Max Friday, March 6, 2009
  • 30. More Examples • http://code.google.com/p/google-axsjax/ • http://scriptingenabled.org/ • http://icant.co.uk/easy-youtube Friday, March 6, 2009
  • 31. To not completely think through Accessibility is as worse as not thinking about it at all Friday, March 6, 2009

Editor's Notes