How to Bypass Navigation Quick Keys

Certain web sites like Facebook that offer interactive features have the ability to define keyboard shortcuts to perform many common tasks. For example, you can press P to post a status update, J and K to move between stories in your news feed, L to like a post, and so on. While these shortcuts offer a great convenience to users navigating the site, many of these keystrokes conflict with JAWS Navigation Quick Keys used to navigate pages in the Virtual environment. For instance, pressing C attempts to move to a combo box instead of commenting on a story, or pressing L tries to move to a list of items instead of liking a story. If you wanted to use a Facebook keystroke, you would first have to press the JAWS command INSERT+3 which causes the next keystroke to be passed directly to the application.

To address this, Freedom Scientific worked with Facebook to create a solution where the web site could tell JAWS what keystrokes were defined, and if there was a conflict, JAWS could allow the keystroke to perform the site specific function instead of the JAWS command. For this to work correctly, the page must include a line of code that tells JAWS what keystrokes are defined by the web site and users must turn on a setting in JAWS which allows any conflicting JAWS keystrokes to be passed directly to the web site.

In order for JAWS to know what keys are being used by the web site, web page authors must include a line containing the key assignments as part of an HTML element where the keystrokes are intended to work. For instance, if you use a <div> tag to hold the main content of the page and the keystrokes are meant to work anywhere on the page, you would do something like the following:

<div data-at-shortcutkeys = {‘j’: ‘Key to navigate to next post’, ‘q’: ‘Key to place focus in chat'}>

No matter where JAWS is focused on the page, the web site keys will work since they are attached to the main <div> tag.

Alternatively, if you had a section of the page reserved for sending and receiving chat messages, you might have certain keystrokes that only work in the chat area. In this case, you would attach the "data-at-shortcut keys" attribute and associated keystrokes to the <div> tag used to designate the chat section. These keys will now only work when JAWS focus is in the chat area.

In JAWS 16.0.2136 and later, there is now a setting called "Allow Web Application Reserved Keystrokes" that you can configure through Settings Center or Quick Settings. When enabled, pressing any key that is both a JAWS command and defined by the web site as a keystroke, will perform the web site specific function instead of the JAWS command. If this option is off, all JAWS keystrokes are processed normally unless INSERT+F3 is pressed first to pass a keystroke through to the application.

To enable this setting, do the following:

  1. Press INSERT+F2, select Settings center, and press ENTER.
  2. Press CTRL+SHIFT+D to open the default settings file.
  3. Focus is in the Search edit box. Type "allow" without the quotes. JAWS filters out all results that do not match the search in the tree view below.
  4. Press DOWN ARROW to move to Allow Web Application Reserved Keystrokes in the filtered results of the tree view in Settings Center.
  5. Press SPACEBAR to check it.
  6. Press TAB to move to the OK button and activate it with the SPACEBAR. The changes are made and saved. Settings Center closes.

Tip: Configuring this option through Settings Center enables it for all browsers. If you only want it enabled for a particular browser, open either Internet Explorer or Firefox, press INSERT+V to open Quick Settings, and search for Allow Web Application Reserved Keystrokes in the tree view and configure it there.

To see this feature in action, open facebook.com in your browser, log in to your account, and then try the following:

Visit the Facebook keyboard shortcuts page for a full list of keyboard shortcuts.

We suggest leaving the Allow Web Application Reserved Keystrokes setting permanently enabled. While Facebook is the primary major web site that currently offers keyboard shortcuts, more and more interactive web sites will be adding them in the future. If a web site does not offer keyboard shortcuts, or they have not correctly used the method to tell JAWS what keys are defined for the site, all JAWS Navigation Quick Keys will continue to work as expected.