Spatial navigation

In computing, spatial navigation is the ability to navigate between focusable elements, such as hyperlinks and form controls, within a structured document or user interface according to the spatial location.

This method is widely used in application software like computer games.

In the past Web browsers have used tabbing navigation to change the focus within an interface, by pressing the tab key of a computer keyboard to focus on the next element (or ⇧ Shift+Tab ↹ to focus on the previous one). The order is based on that in the source document. For HTML without any style, this method usually works as the spatial location of the element is in the same order of the source document. However, with the introduction of style via presentational attributes or style sheets such as CSS, this type of navigation is being used less often. Spatial navigation uses the arrow keys (with one or more modifier key held) to navigate on the "2D plane" of the interface. For example, pressing the "up" arrow key will focus on the closest focusable element on the top (relative to the current element). In many cases, this could save many key presses.

This accessibility feature is available in a number of applications, e.g. Vivaldi web browser.[1] For Vivaldi users, this allows a faster way to "jump" to different areas in long web pages or articles without manually scrolling and scanning with their eyes. Some examples, as noted above, include the Tab ↹ key to jump to the next input field, but also the ⇧ Shift key with arrow keys (, , , ) to jump to various links and text headers.

Doug Turner (Mozilla), the Minimo lead developer, has created a couple of special Mozilla Firefox builds with this feature. Eventually, this may build as a default part of Firefox.

Nightly builds of WebKit (the layout engine used by Apple Safari and Google Chrome, among others) now[2] have support for spatial navigation.

In games such navigation is represented by (for example) camera-relative movement.

See also

References

  1. ^ "Spatial Navigation". Vivaldi Browser Help. Vivaldi Technologies.
  2. ^ WebKit changeset 55543 http://trac.webkit.org/changeset/55543