views:

263

answers:

6

How do you go about building a complete keyboard accessible web applications? Assuming that this for a controlled deployment environment(for use within an org) where access is restricted (not open to public).

Update: Forgot to mention that this aimed at improving data entry efficiency and not disability related.

Update 2: Would it make sense to use flash for the entire application? Considering that the environment is browser based and NOT web based?

A: 

The keyboard shortcut functionality in Fogbugz is some of the best keyboard support I've seen in a web application.

It obviously entails writing a lot of Javascript - I'm not sure if Joel has documented their approach anywhere.

Galwegian
+1  A: 

It's kind of a pain. On the project I worked on with that requirement (a teller system for bank tellers), we had a lot of javascript monitoring key* (keypress, keydown, keyup, etc.) events and such. That may not be the best way (we were all novices on web development for the project - blind leading the blind) but that was our approach.

The thing we never were able to give them was the ability to press the enter key to move between fields like they were able to do on their old teller systems or their Sharp teller machines...

edit Maybe it wasn't so bad, if Joel's team did a lot of javascript to handle it on FogzBugz

Knobloch
The only better way is to find a library with those things taken care of, which might be difficult considering the vague/sparse problem domain.
Karl
Yeah, I just did a couple of Google searches and the well was pretty dry.
Knobloch
+2  A: 

Well, first of all, you have to make strong assumptions in order to have a chance to reach your goal:

  • You'll have to support only one browser. If not, you're ready for a pain in the ass process as all the browser have different already predefined shortcuts.
  • You'll work in a controlled environment. Same as above, with all this plugins, and associated tool that add functionalties to the browser, it becames a nightmare to avoid conflicts.
  • You'll make LOTS of User acceptance tests! Finding the right shortcuts is hard, really. It has to be easily reachable on the keyboard, meaningful to be easily reminded by users, and last but not least, avoid that risky shortcuts combo occurs too easily.

If you don't satisfy all this points. Stop and think twice about it before going-on, or you'll hit the wall.

gizmo
+1  A: 

I asked the same and got few answers at:
http://stackoverflow.com/questions/299776/keyboard-shortcuts

Nick
Didn't find that one when I searched. Thanks.
Shoan
A: 

accesskey html attribute

+1  A: 

I have used this library extensively

shortcut.add("Ctrl+Shift+X",function() {
    alert("Hi there!");
});
Jeff.Crossett