I felt it was about time to bring up the topic in one of my oldest drafts (written in May 2005) which, for some reason, never saw the light of day.
What are access keys?
Basically, access keys is about connecting keyboard shortcuts to certain HTML elements, such as links, search form fields in a web page etc. Paired with a certain trigger key, different depending per operating system (normally Alt in Windows, Ctrl in Mac), it can be used in any web page. It can look like this:
<a href="#main-content" accesskey="s"> Skip to main content</a>
The reason they exist is to offer another navigation option for people with different disabilities, such as screen reader users, people who can only use the keyboard but not a mouse, developers like me who are obsessed with keyboard control. There are some fairly standardized access keys, such as:
- S: Skip navigation
- 1: Go to home page
- 4: Search (set focus to search field)
A more detailed list with different alternatives can be found in: Accesskey standards, and various government accessibility guidelines set their own standards.
As you probably have figured out by now, access keys are bound to collide with other operating system-, web browser- or web browser-extension shortcuts. While attempts have been there to offer the user to define access keys (Greasemonkey version), personally I think the same access keys should go for all web sites, or the cause is somewhat lost.
And that kind of leads to the gist of the problem: most web developers don’t know about access keys and/or don’t think it’s worth the hassle of offering them to the end user, due to above mentioned collisions and inconsistencies. Me, I use the most common ones like skip, search and home page, but otherwise I tend not to include them (unless it’s for some sort of government web site with certain regulations).
A little poll
Out of curiosity, I thought I’d introduce my first poll-in-a-blog-post to see whether you use access keys in your code (recommended: visit my web site to vote). Comments about the existence and necessity of access keys are of course also very welcome.