SlideShare una empresa de Scribd logo
1 de 26
© Steria   Slide 1
Remember thick applications? (Yeah I know we’re still building them
           but bear with me)
           I’m talking about pre-GUI applications that were navigated solely using
           keyboard,




© Steria                                                                             Slide 2
in the case of Word Perfect shown here, we also labelled our
           keyboards with cheat-sheets to help us use it more effectively.
           More on that later




© Steria                                                                     Slide 3
Enter the GUI and it’s companion, the mouse.




© Steria                                                  Slide 4
The rise of the web, which was mouse only, gave way to a trend of
           mouse-only interfaces.
           Despite some noteable exceptions, a website used with a browser is
           still a mouse only interface.




© Steria                                                                        Slide 5
Now what happens! We build thick apps INSIDE another thick app, the
           browser.
           What happens when apps are moved to the web? Mouse-only
           interfaces, that’s what! Just because it’s inside a browser doesn’t mean
           it should be designed like a website.




© Steria                                                                              Slide 6
The mouse is easy to learn, while keyboard navigation is more efficient




© Steria                                                                             Slide 7
The reason is a mouse-only interface can be learned without prior
           instruction provided that clickable items are visible to the user and their
           meaning is apparent. That means it’s fast to learn but slow to use
           because of the need to seek out and interpret the information on the
           screen.
           Keyboard navigation is much faster and commands can be issued
           without having to search for it in a menu.
           The downside? You have to remember it.




© Steria                                                                                 Slide 8
The browser is a just a sack full of EVIL isn’t it.
           Your job is to work around it so that the end user doesn’t get the shaft.


           What if you had to work with IntelliJ or Eclipse within your browser? It
           hurts just thinking about it doesn’t it, doesnt’ it?




© Steria                                                                               Slide 9
An example of browser evil: Any keycombo you want to use for your
           webapp is highly likely to conflict with a browser key combo.
           It gets worse: not all browsers are the same. You can never control
           which browser is going to be used as runtime enviroment for the app
           your building.




© Steria                                                                         Slide 10
It doesn’t have to be a browser. When using a framework like Adobe
           Flex, AIR can be an alternative to a browser, leaving you with greater
           choice of available keyboard shortcuts.




© Steria                                                                            Slide 11
Which keys do we use when every key is taken by the browser?
           Here’s Gmail, everyone’s favourite mail app that runs in most of the
           browsers we know of.
           Gmail is a very good example to follow since it’s very consistent and
           has many keyboard shortcuts that does not conflict with browser-
           navigation keys.


           Regarding consistency…: (next slide)




© Steria                                                                           Slide 12
(cont.)…The time spent learning keyboard shortcuts is drastically
           reduced if the keys selected are consistent according to a pattern.
           Can you guess the key combo used to go to ”contacts”? Of course you
           can.


           An arbitrary selection of keys is almost impossible to learn.




© Steria                                                                         Slide 13
When in doubt, follow standards.


           This checklist is based on Microsoft recommendations, but remember –
           You app can run anywhere, on a Mac, iPad or whatever your client
           fancies next.




© Steria                                                                          Slide 14
You can use Alt Gr + most of the letters and numbers on the keyboard
           without interfering too much with other browser shortcuts




© Steria                                                                          Slide 15
If it serves your purpose you can open the browser window without
           tabs. That way you can use ctrl+1, 2, etc without conflict.
           (Those keys are normally used to switch tabs in IE and Firefox)




© Steria                                                                       Slide 16
Make cheat-sheets for the users keyboards, just like in the good old
           days – your users will love you for it.




© Steria                                                                          Slide 17
Ways to make shortcuts visible in the application (Remember
           ”knowledge in the world vs. Knowledge in the head”?)
           -Shortcuts visible in menu
           -Underlined letters indicate association with a key




© Steria                                                                 Slide 18
Best example I’ve seen is MS Office: Click ALT key to let the
           application show you all the keys.




© Steria                                                                   Slide 19
- Tab sequence can be the primary way to navigate and app, e.g. shift
           focus from one part of the app to another
           - Is the standard way to navigate forms
           - Shift+tab = reverse your path




© Steria                                                                           Slide 20
The devil is in the details: Cursor Focus, Error messages, scrollbars,
           dropdowns. How do you pull down a pull-down menu with keyboard
           only? What about the fancy scripted date-picker?
           Can you close an error message using the ESC key?
           What about selecting odd lines in a datagrid? Can you de-select them
           again?
           Be sure to check if all the components in your GUI is possible to use
           without a mouse. Unplug the mouse and you’ll soon know if you’re in
           trouble or not.




© Steria                                                                            Slide 21
In this example, no keyboard navigation is required. Just type.


           - System starts with cursor focus in first text area in the dialog box –no
           need to tab to the field, just start typing.
           - Error message is displayed inline – cursor is still where it needs to be
           and no need to shift focus.
           - When the data is correct the cursor automatically jumps to next field,
           no need to click or Tab.


           -Efficiency and user friendlyness goes hand in hand in this example




© Steria                                                                                Slide 22
Key takeaways from this talk.


           -Do you remember what the recommended key for applying a
           command to the entire document was?




© Steria                                                              Slide 23
All the stuff I wanted to include but couldn’t. It’s just 10 minutes after all
           




© Steria                                                                                    Slide 24
I’ve worked as an interaction designer for Steria since 2008 with clients
           such as The Norwegian Police, Storm.no and The Norwegian
           Government pension fund.




© Steria                                                                               Slide 25
Thanks for checking out this presentation, and good luck building
           accessible webapplications.




© Steria                                                                       Slide 26

Más contenido relacionado

Destacado

The Prophet Muhammad : A Simple Guide To His Life
The Prophet Muhammad : A Simple Guide To His LifeThe Prophet Muhammad : A Simple Guide To His Life
The Prophet Muhammad : A Simple Guide To His LifeDabeer Nastar
 
Jornal Novos horizontes ed. fevereiro 2016
Jornal Novos horizontes ed. fevereiro 2016Jornal Novos horizontes ed. fevereiro 2016
Jornal Novos horizontes ed. fevereiro 2016Pascom Paroquia Nssc
 
Current methods of learning and teaching trabajo definitivo
Current methods of learning and teaching trabajo definitivoCurrent methods of learning and teaching trabajo definitivo
Current methods of learning and teaching trabajo definitivorosamariasaor
 
12 revelation 12 and the cross- Jon Paulien.
12 revelation 12 and the cross- Jon Paulien.12 revelation 12 and the cross- Jon Paulien.
12 revelation 12 and the cross- Jon Paulien.Pedro Avellar
 
EDF2013 - Richard Benjamins: Big Data – Big opportunities – Big risks? And ...
EDF2013 - Richard Benjamins: Big Data –  Big opportunities –  Big risks? And ...EDF2013 - Richard Benjamins: Big Data –  Big opportunities –  Big risks? And ...
EDF2013 - Richard Benjamins: Big Data – Big opportunities – Big risks? And ...European Data Forum
 
EDF2013: Keynote Stefan Decker: Big Data In Ireland - Linked Data and beyond
EDF2013: Keynote Stefan Decker: Big Data In Ireland - Linked Data and beyondEDF2013: Keynote Stefan Decker: Big Data In Ireland - Linked Data and beyond
EDF2013: Keynote Stefan Decker: Big Data In Ireland - Linked Data and beyondEuropean Data Forum
 
Assessment of the Accuracy of GeoNames Gazetteer Data
Assessment of the Accuracy of GeoNames Gazetteer DataAssessment of the Accuracy of GeoNames Gazetteer Data
Assessment of the Accuracy of GeoNames Gazetteer DataDirk Ahlers
 

Destacado (8)

Daniel 9 wazari
Daniel 9  wazariDaniel 9  wazari
Daniel 9 wazari
 
The Prophet Muhammad : A Simple Guide To His Life
The Prophet Muhammad : A Simple Guide To His LifeThe Prophet Muhammad : A Simple Guide To His Life
The Prophet Muhammad : A Simple Guide To His Life
 
Jornal Novos horizontes ed. fevereiro 2016
Jornal Novos horizontes ed. fevereiro 2016Jornal Novos horizontes ed. fevereiro 2016
Jornal Novos horizontes ed. fevereiro 2016
 
Current methods of learning and teaching trabajo definitivo
Current methods of learning and teaching trabajo definitivoCurrent methods of learning and teaching trabajo definitivo
Current methods of learning and teaching trabajo definitivo
 
12 revelation 12 and the cross- Jon Paulien.
12 revelation 12 and the cross- Jon Paulien.12 revelation 12 and the cross- Jon Paulien.
12 revelation 12 and the cross- Jon Paulien.
 
EDF2013 - Richard Benjamins: Big Data – Big opportunities – Big risks? And ...
EDF2013 - Richard Benjamins: Big Data –  Big opportunities –  Big risks? And ...EDF2013 - Richard Benjamins: Big Data –  Big opportunities –  Big risks? And ...
EDF2013 - Richard Benjamins: Big Data – Big opportunities – Big risks? And ...
 
EDF2013: Keynote Stefan Decker: Big Data In Ireland - Linked Data and beyond
EDF2013: Keynote Stefan Decker: Big Data In Ireland - Linked Data and beyondEDF2013: Keynote Stefan Decker: Big Data In Ireland - Linked Data and beyond
EDF2013: Keynote Stefan Decker: Big Data In Ireland - Linked Data and beyond
 
Assessment of the Accuracy of GeoNames Gazetteer Data
Assessment of the Accuracy of GeoNames Gazetteer DataAssessment of the Accuracy of GeoNames Gazetteer Data
Assessment of the Accuracy of GeoNames Gazetteer Data
 

Similar a Keyboard Navigation in Web Apps

Introduction to Computers Script
Introduction to Computers ScriptIntroduction to Computers Script
Introduction to Computers ScriptSaide OER Africa
 
Five Mistakes to Avoid in Creating User Interfaces for Mobile Devices
Five Mistakes to Avoid in Creating User Interfaces for Mobile DevicesFive Mistakes to Avoid in Creating User Interfaces for Mobile Devices
Five Mistakes to Avoid in Creating User Interfaces for Mobile DevicesAltoros
 
Where Do I Click
Where Do I ClickWhere Do I Click
Where Do I Clickbredex
 
Mixing Games And Applications
Mixing Games And ApplicationsMixing Games And Applications
Mixing Games And Applicationslosalamos
 
User centric interface_article
User centric interface_articleUser centric interface_article
User centric interface_articlerajivjayaraman
 
Tool review
Tool reviewTool review
Tool reviewwm175309
 
Introduction to Desktop Applications In C#
Introduction to Desktop Applications In C# Introduction to Desktop Applications In C#
Introduction to Desktop Applications In C# "Filniño Edmar Ambos"
 
Designing Windows 8 application - Microsoft Techdays 2013
Designing Windows 8 application - Microsoft Techdays 2013Designing Windows 8 application - Microsoft Techdays 2013
Designing Windows 8 application - Microsoft Techdays 2013Markus Jönsson
 
Ubercool, pixel perfct & slick design… that just doesn't work
Ubercool, pixel perfct & slick design… that just doesn't workUbercool, pixel perfct & slick design… that just doesn't work
Ubercool, pixel perfct & slick design… that just doesn't workSamuel Bednar
 
Google I/O 2019 - what's new in Android Q and Jetpack
Google I/O 2019 - what's new in Android Q and JetpackGoogle I/O 2019 - what's new in Android Q and Jetpack
Google I/O 2019 - what's new in Android Q and JetpackSunita Singh
 
2014 UX/UI trends for mobile solutions
2014 UX/UI trends for mobile solutions2014 UX/UI trends for mobile solutions
2014 UX/UI trends for mobile solutionsDMI
 

Similar a Keyboard Navigation in Web Apps (20)

Introduction to Computers Script
Introduction to Computers ScriptIntroduction to Computers Script
Introduction to Computers Script
 
Five Mistakes to Avoid in Creating User Interfaces for Mobile Devices
Five Mistakes to Avoid in Creating User Interfaces for Mobile DevicesFive Mistakes to Avoid in Creating User Interfaces for Mobile Devices
Five Mistakes to Avoid in Creating User Interfaces for Mobile Devices
 
Web 2.0 Usability
Web 2.0 UsabilityWeb 2.0 Usability
Web 2.0 Usability
 
Android
AndroidAndroid
Android
 
Where Do I Click
Where Do I ClickWhere Do I Click
Where Do I Click
 
The Challenge of Touchscreen Clutter - v2 - 9.26.2012
The Challenge of Touchscreen Clutter - v2 - 9.26.2012The Challenge of Touchscreen Clutter - v2 - 9.26.2012
The Challenge of Touchscreen Clutter - v2 - 9.26.2012
 
Ux guide
Ux guideUx guide
Ux guide
 
Sikuli script
Sikuli scriptSikuli script
Sikuli script
 
Mixing Games And Applications
Mixing Games And ApplicationsMixing Games And Applications
Mixing Games And Applications
 
User centric interface_article
User centric interface_articleUser centric interface_article
User centric interface_article
 
Tool review
Tool reviewTool review
Tool review
 
sikuli final
sikuli finalsikuli final
sikuli final
 
Introduction to Desktop Applications In C#
Introduction to Desktop Applications In C# Introduction to Desktop Applications In C#
Introduction to Desktop Applications In C#
 
Designing Windows 8 application - Microsoft Techdays 2013
Designing Windows 8 application - Microsoft Techdays 2013Designing Windows 8 application - Microsoft Techdays 2013
Designing Windows 8 application - Microsoft Techdays 2013
 
iPad workshop
iPad workshopiPad workshop
iPad workshop
 
Win 8 webinar
Win 8 webinarWin 8 webinar
Win 8 webinar
 
Ubercool, pixel perfct & slick design… that just doesn't work
Ubercool, pixel perfct & slick design… that just doesn't workUbercool, pixel perfct & slick design… that just doesn't work
Ubercool, pixel perfct & slick design… that just doesn't work
 
Google I/O 2019 - what's new in Android Q and Jetpack
Google I/O 2019 - what's new in Android Q and JetpackGoogle I/O 2019 - what's new in Android Q and Jetpack
Google I/O 2019 - what's new in Android Q and Jetpack
 
Ipad learning more
Ipad   learning moreIpad   learning more
Ipad learning more
 
2014 UX/UI trends for mobile solutions
2014 UX/UI trends for mobile solutions2014 UX/UI trends for mobile solutions
2014 UX/UI trends for mobile solutions
 

Más de jonwold

Brukersentrert innovasjon er IKKE død
Brukersentrert innovasjon er IKKE dødBrukersentrert innovasjon er IKKE død
Brukersentrert innovasjon er IKKE dødjonwold
 
Metaforer i GUI kan kastes! (Eller "flyttes til papirkurves")
Metaforer i GUI kan kastes! (Eller "flyttes til papirkurves")Metaforer i GUI kan kastes! (Eller "flyttes til papirkurves")
Metaforer i GUI kan kastes! (Eller "flyttes til papirkurves")jonwold
 
Brukerintervjuer - fra løse tråder til funksjonelle krav
Brukerintervjuer - fra løse tråder til funksjonelle kravBrukerintervjuer - fra løse tråder til funksjonelle krav
Brukerintervjuer - fra løse tråder til funksjonelle kravjonwold
 
Yggdrasil 2008: Koselig Eller Psykopatisk?
Yggdrasil 2008: Koselig Eller Psykopatisk?Yggdrasil 2008: Koselig Eller Psykopatisk?
Yggdrasil 2008: Koselig Eller Psykopatisk?jonwold
 
Smidig 2008 Slik Samarbeider Du Med UX - med kommentarer
Smidig 2008 Slik Samarbeider Du Med UX - med kommentarerSmidig 2008 Slik Samarbeider Du Med UX - med kommentarer
Smidig 2008 Slik Samarbeider Du Med UX - med kommentarerjonwold
 
Finn Kjip Med Vilje Webdagene08
Finn  Kjip Med Vilje Webdagene08Finn  Kjip Med Vilje Webdagene08
Finn Kjip Med Vilje Webdagene08jonwold
 
Gonzo Brukertesting
Gonzo BrukertestingGonzo Brukertesting
Gonzo Brukertestingjonwold
 

Más de jonwold (7)

Brukersentrert innovasjon er IKKE død
Brukersentrert innovasjon er IKKE dødBrukersentrert innovasjon er IKKE død
Brukersentrert innovasjon er IKKE død
 
Metaforer i GUI kan kastes! (Eller "flyttes til papirkurves")
Metaforer i GUI kan kastes! (Eller "flyttes til papirkurves")Metaforer i GUI kan kastes! (Eller "flyttes til papirkurves")
Metaforer i GUI kan kastes! (Eller "flyttes til papirkurves")
 
Brukerintervjuer - fra løse tråder til funksjonelle krav
Brukerintervjuer - fra løse tråder til funksjonelle kravBrukerintervjuer - fra løse tråder til funksjonelle krav
Brukerintervjuer - fra løse tråder til funksjonelle krav
 
Yggdrasil 2008: Koselig Eller Psykopatisk?
Yggdrasil 2008: Koselig Eller Psykopatisk?Yggdrasil 2008: Koselig Eller Psykopatisk?
Yggdrasil 2008: Koselig Eller Psykopatisk?
 
Smidig 2008 Slik Samarbeider Du Med UX - med kommentarer
Smidig 2008 Slik Samarbeider Du Med UX - med kommentarerSmidig 2008 Slik Samarbeider Du Med UX - med kommentarer
Smidig 2008 Slik Samarbeider Du Med UX - med kommentarer
 
Finn Kjip Med Vilje Webdagene08
Finn  Kjip Med Vilje Webdagene08Finn  Kjip Med Vilje Webdagene08
Finn Kjip Med Vilje Webdagene08
 
Gonzo Brukertesting
Gonzo BrukertestingGonzo Brukertesting
Gonzo Brukertesting
 

Último

Government polytechnic college-1.pptxabcd
Government polytechnic college-1.pptxabcdGovernment polytechnic college-1.pptxabcd
Government polytechnic college-1.pptxabcdshivubhavv
 
2-tool presenthdbdbdbdbddhdhddation.pptx
2-tool presenthdbdbdbdbddhdhddation.pptx2-tool presenthdbdbdbdbddhdhddation.pptx
2-tool presenthdbdbdbdbddhdhddation.pptxsuhanimunjal27
 
infant assessment fdbbdbdddinal ppt.pptx
infant assessment fdbbdbdddinal ppt.pptxinfant assessment fdbbdbdddinal ppt.pptx
infant assessment fdbbdbdddinal ppt.pptxsuhanimunjal27
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Gi...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Gi...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Gi...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Gi...Pooja Nehwal
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...Pooja Nehwal
 
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...Call Girls in Nagpur High Profile
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation decktbatkhuu1
 
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Call Girls in Nagpur High Profile
 
DragonBall PowerPoint Template for demo.pptx
DragonBall PowerPoint Template for demo.pptxDragonBall PowerPoint Template for demo.pptx
DragonBall PowerPoint Template for demo.pptxmirandajeremy200221
 
call girls in Dakshinpuri (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Dakshinpuri  (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️call girls in Dakshinpuri  (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Dakshinpuri (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...amitlee9823
 
The history of music videos a level presentation
The history of music videos a level presentationThe history of music videos a level presentation
The history of music videos a level presentationamedia6
 
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...amitlee9823
 
Chapter 19_DDA_TOD Policy_First Draft 2012.pdf
Chapter 19_DDA_TOD Policy_First Draft 2012.pdfChapter 19_DDA_TOD Policy_First Draft 2012.pdf
Chapter 19_DDA_TOD Policy_First Draft 2012.pdfParomita Roy
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...kumaririma588
 
💫✅jodhpur 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATISFACT...
💫✅jodhpur 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATISFACT...💫✅jodhpur 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATISFACT...
💫✅jodhpur 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATISFACT...sonalitrivedi431
 
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...Delhi Call girls
 
SD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxSD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxjanettecruzeiro1
 

Último (20)

Government polytechnic college-1.pptxabcd
Government polytechnic college-1.pptxabcdGovernment polytechnic college-1.pptxabcd
Government polytechnic college-1.pptxabcd
 
2-tool presenthdbdbdbdbddhdhddation.pptx
2-tool presenthdbdbdbdbddhdhddation.pptx2-tool presenthdbdbdbdbddhdhddation.pptx
2-tool presenthdbdbdbdbddhdhddation.pptx
 
infant assessment fdbbdbdddinal ppt.pptx
infant assessment fdbbdbdddinal ppt.pptxinfant assessment fdbbdbdddinal ppt.pptx
infant assessment fdbbdbdddinal ppt.pptx
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Gi...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Gi...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Gi...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Gi...
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
 
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
 
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
 
DragonBall PowerPoint Template for demo.pptx
DragonBall PowerPoint Template for demo.pptxDragonBall PowerPoint Template for demo.pptx
DragonBall PowerPoint Template for demo.pptx
 
Call Girls Service Mukherjee Nagar @9999965857 Delhi 🫦 No Advance VVIP 🍎 SER...
Call Girls Service Mukherjee Nagar @9999965857 Delhi 🫦 No Advance  VVIP 🍎 SER...Call Girls Service Mukherjee Nagar @9999965857 Delhi 🫦 No Advance  VVIP 🍎 SER...
Call Girls Service Mukherjee Nagar @9999965857 Delhi 🫦 No Advance VVIP 🍎 SER...
 
call girls in Dakshinpuri (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Dakshinpuri  (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️call girls in Dakshinpuri  (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
call girls in Dakshinpuri (DELHI) 🔝 >༒9953056974 🔝 genuine Escort Service 🔝✔️✔️
 
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
RT Nagar Call Girls Service: 🍓 7737669865 🍓 High Profile Model Escorts | Bang...
 
young call girls in Vivek Vihar🔝 9953056974 🔝 Delhi escort Service
young call girls in Vivek Vihar🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Vivek Vihar🔝 9953056974 🔝 Delhi escort Service
young call girls in Vivek Vihar🔝 9953056974 🔝 Delhi escort Service
 
The history of music videos a level presentation
The history of music videos a level presentationThe history of music videos a level presentation
The history of music videos a level presentation
 
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
 
Chapter 19_DDA_TOD Policy_First Draft 2012.pdf
Chapter 19_DDA_TOD Policy_First Draft 2012.pdfChapter 19_DDA_TOD Policy_First Draft 2012.pdf
Chapter 19_DDA_TOD Policy_First Draft 2012.pdf
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
 
💫✅jodhpur 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATISFACT...
💫✅jodhpur 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATISFACT...💫✅jodhpur 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATISFACT...
💫✅jodhpur 24×7 BEST GENUINE PERSON LOW PRICE CALL GIRL SERVICE FULL SATISFACT...
 
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
 
SD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxSD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptx
 

Keyboard Navigation in Web Apps

  • 1. © Steria Slide 1
  • 2. Remember thick applications? (Yeah I know we’re still building them but bear with me) I’m talking about pre-GUI applications that were navigated solely using keyboard, © Steria Slide 2
  • 3. in the case of Word Perfect shown here, we also labelled our keyboards with cheat-sheets to help us use it more effectively. More on that later © Steria Slide 3
  • 4. Enter the GUI and it’s companion, the mouse. © Steria Slide 4
  • 5. The rise of the web, which was mouse only, gave way to a trend of mouse-only interfaces. Despite some noteable exceptions, a website used with a browser is still a mouse only interface. © Steria Slide 5
  • 6. Now what happens! We build thick apps INSIDE another thick app, the browser. What happens when apps are moved to the web? Mouse-only interfaces, that’s what! Just because it’s inside a browser doesn’t mean it should be designed like a website. © Steria Slide 6
  • 7. The mouse is easy to learn, while keyboard navigation is more efficient © Steria Slide 7
  • 8. The reason is a mouse-only interface can be learned without prior instruction provided that clickable items are visible to the user and their meaning is apparent. That means it’s fast to learn but slow to use because of the need to seek out and interpret the information on the screen. Keyboard navigation is much faster and commands can be issued without having to search for it in a menu. The downside? You have to remember it. © Steria Slide 8
  • 9. The browser is a just a sack full of EVIL isn’t it. Your job is to work around it so that the end user doesn’t get the shaft. What if you had to work with IntelliJ or Eclipse within your browser? It hurts just thinking about it doesn’t it, doesnt’ it? © Steria Slide 9
  • 10. An example of browser evil: Any keycombo you want to use for your webapp is highly likely to conflict with a browser key combo. It gets worse: not all browsers are the same. You can never control which browser is going to be used as runtime enviroment for the app your building. © Steria Slide 10
  • 11. It doesn’t have to be a browser. When using a framework like Adobe Flex, AIR can be an alternative to a browser, leaving you with greater choice of available keyboard shortcuts. © Steria Slide 11
  • 12. Which keys do we use when every key is taken by the browser? Here’s Gmail, everyone’s favourite mail app that runs in most of the browsers we know of. Gmail is a very good example to follow since it’s very consistent and has many keyboard shortcuts that does not conflict with browser- navigation keys. Regarding consistency…: (next slide) © Steria Slide 12
  • 13. (cont.)…The time spent learning keyboard shortcuts is drastically reduced if the keys selected are consistent according to a pattern. Can you guess the key combo used to go to ”contacts”? Of course you can. An arbitrary selection of keys is almost impossible to learn. © Steria Slide 13
  • 14. When in doubt, follow standards. This checklist is based on Microsoft recommendations, but remember – You app can run anywhere, on a Mac, iPad or whatever your client fancies next. © Steria Slide 14
  • 15. You can use Alt Gr + most of the letters and numbers on the keyboard without interfering too much with other browser shortcuts © Steria Slide 15
  • 16. If it serves your purpose you can open the browser window without tabs. That way you can use ctrl+1, 2, etc without conflict. (Those keys are normally used to switch tabs in IE and Firefox) © Steria Slide 16
  • 17. Make cheat-sheets for the users keyboards, just like in the good old days – your users will love you for it. © Steria Slide 17
  • 18. Ways to make shortcuts visible in the application (Remember ”knowledge in the world vs. Knowledge in the head”?) -Shortcuts visible in menu -Underlined letters indicate association with a key © Steria Slide 18
  • 19. Best example I’ve seen is MS Office: Click ALT key to let the application show you all the keys. © Steria Slide 19
  • 20. - Tab sequence can be the primary way to navigate and app, e.g. shift focus from one part of the app to another - Is the standard way to navigate forms - Shift+tab = reverse your path © Steria Slide 20
  • 21. The devil is in the details: Cursor Focus, Error messages, scrollbars, dropdowns. How do you pull down a pull-down menu with keyboard only? What about the fancy scripted date-picker? Can you close an error message using the ESC key? What about selecting odd lines in a datagrid? Can you de-select them again? Be sure to check if all the components in your GUI is possible to use without a mouse. Unplug the mouse and you’ll soon know if you’re in trouble or not. © Steria Slide 21
  • 22. In this example, no keyboard navigation is required. Just type. - System starts with cursor focus in first text area in the dialog box –no need to tab to the field, just start typing. - Error message is displayed inline – cursor is still where it needs to be and no need to shift focus. - When the data is correct the cursor automatically jumps to next field, no need to click or Tab. -Efficiency and user friendlyness goes hand in hand in this example © Steria Slide 22
  • 23. Key takeaways from this talk. -Do you remember what the recommended key for applying a command to the entire document was? © Steria Slide 23
  • 24. All the stuff I wanted to include but couldn’t. It’s just 10 minutes after all  © Steria Slide 24
  • 25. I’ve worked as an interaction designer for Steria since 2008 with clients such as The Norwegian Police, Storm.no and The Norwegian Government pension fund. © Steria Slide 25
  • 26. Thanks for checking out this presentation, and good luck building accessible webapplications. © Steria Slide 26