Skip to content

Commit 0a6fe84

Browse files
author
Jihye Hong
authored
Update README.md
1 parent c46e8eb commit 0a6fe84

1 file changed

Lines changed: 13 additions & 13 deletions

File tree

README.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@ This repository consists of the basic description for the spatial navigation, la
66
You're welcome to contribute! If you have something to say for the spatial navigation, please kindly put it on [issues](https://github.com/lgeweb/spatial-navigation/issues) of this repository or send it via [email](mailto://lgewst@gmail.com). Let's make the Web to be extensible for the several industries!
77

88
## Overview
9-
**Spatial navigation (aka Snav)** is the ability to navigate between focusable elements based on their position within a structured document. Spatial navigation is often called 'directional navigation' which enables four(4) directional navigation. Users are usually familiar with the 2-way navigation using tab key for the forward direction and shift+tab key for the backward direction, but not familiar with the 4-way navigation using arrow keys.
9+
**Spatial navigation (aka Snav)** is the ability to navigate the focus between focusable elements based on their position within a structured document. Spatial navigation is often called 'directional navigation' which enables four(4) directional navigation. Users are usually familiar with the 2-way navigation using tab key for the forward direction and shift+tab key for the backward direction, but not familiar with the 4-way navigation using arrow keys.
1010

1111
Regarding TV remote control, game console pad, IVI jog dial with 4-way keys, and Web accessibility, the spatial navigation has been a rising important input mechanism in several industries. If the Web can embrace the spatial navigation and effectively support the functionalities in Web engines and W3C APIs, it will be more promising technology for existing products as mentioned above and various upcoming smart devices.
1212

1313
## Mission
14-
Prior to the mission explanation, we need to understand how the arrow keys works currently in the Web. If you're watching this page in a normal HD monitor and desktop, not mobile, please push a down key in your keyboard. What happens? Basically, scrolling downward would be triggered. That's the default behavior of arrow keys in the Web, only when the browsing context is overflowed in the direction.
14+
Prior to the mission explanation, we need to understand how the arrow keys works currently in the Web. If you're watching this page in a normal HD monitor and desktop, not mobile, please push a down-arrow key in your keyboard. What happens? Basically, scrolling downward would be triggered. That's the default behavior of arrow keys in the Web, only when the page is scrollable in the direction.
1515

1616
In spatial navigation mode, the default behavior of arrow keys is changed from scrolling behavior to focus moving so that users can use the arrow keys to navigate between focusable elements based on their position. To support the functionalities of the spatial navigation, we should consider the following three steps:
17-
1. Options for enabling the spatial navigation mode
17+
1. The API for enabling the spatial navigation mode
1818
2. A heuristic algorithm for the spatial navigation in Web engines
1919
3. Overriding methods on top of the heuristic algorithm
2020

@@ -23,23 +23,23 @@ See the [explainer](explainer.md) for the details of W3C standardization for #1
2323
See the [implStatus](implStatus.md) for the details of the implementation in Web engines for #2 above.
2424

2525
## FAQ
26-
**Q. I’m not sure how the spatial (directional) navigation behavior work.**
27-
- You can see the video that shows the Snav behavior in the YouTube page ([link](https://www.youtube.com/watch?v=TzDtcX9urUg)).
26+
**Q. I’m not sure how the spatial (directional) navigation works.**
27+
- You can see the video that shows the Snav operations in the YouTube page ([link](https://www.youtube.com/watch?v=TzDtcX9urUg)).
2828
- You can see the brief description for the Snav in Wikipedia ([link](https://en.wikipedia.org/wiki/Spatial_navigation)).
2929
- In several references below, you can get the help to understand the Snav operations well.
3030

3131
**Q. Isn’t it enough just using the relevant Web frameworks?**
32-
- Severel Web frameworks and extensions for the Snav have been provided so far due to no support from web engines. For examples, [js-spatial-navigation](https://github.com/luke-chang/js-spatial-navigation) made by Mozilla seems one of the frameworks and the quality would be good to support the features of Snav. [Spotlight library](https://github.com/enyojs/spotlight) made by LGE is also an instance of the frameworks for the Snav, even though it was deprecated now. However, the support of Snav from Web frameworks has some limits as follows:
33-
- difficult to align native scroll behavior when moving the focus to an element out of view
34-
- difficult to align native focus method for a11y support
35-
- performance degradation due to the expensive cost of DOM Access
36-
- inconsistency of user experience (various sort of frameworks)
37-
- impossible to control isolated frames like iframe and shadow DOM
32+
- Severel Web frameworks and extensions for the Snav have been provided so far due to no support from web engines. For examples, [js-spatial-navigation](https://github.com/luke-chang/js-spatial-navigation) made by Mozilla seems one of the frameworks and its quality would be good to support the features of Snav. [Spotlight library](https://github.com/enyojs/spotlight) made by LGE is also an instance of the frameworks for the Snav, even though it was deprecated now. However, the support of Snav from Web frameworks has some limits as follows:
33+
- Difficult to align native scroll behavior when moving the focus to an element out of view
34+
- Difficult to align native focus method for a11y support
35+
- Performance degradation due to the expensive cost of DOM Access
36+
- Inconsistency of user experience (various sort of frameworks)
37+
- Impossible to control isolated frames like iframe and shadow DOM
3838

3939
**Q. The Snav seems not the general feature esp. in mobile with no physical key-based interface.**
40-
- Honestly, the mobile has been a first citizen of Snav about 10 years old. Before touch-based interface, the majority of interface for mobile was key-based input methods. We're familiar with kind of mobile phone named a feature phone and it has been supported in several developing contries such as South America, Africa even until now.
40+
- Honestly, the mobile has been a first citizen of Snav about 10 years old. Before touch-based interface, the majority of interface for mobile was key-based interface. We're familiar with kind of mobile phone named a feature phone and it has been supported in several developing contries such as South America, Africa even until now.
4141

42-
- In the future, the input method for smart devices will be changed to something like voice command, hand gesture, and eyes direction, but the key-based interfaces will never disappear, even though it'll be used as a secondary method. The key-based interface used to be evaluated as one of the most intuitive methods with a strong sense feedback of finger after pushing a key, while we couldn't imagine a touch-based keyboard without any physical keys.
42+
- In the future, the input method for smart devices will change to something like voice command, hand gesture, and gaze direction, but the key-based interface will never disappear, even though it'll be used as a secondary method. The key-based interface used to be evaluated as one of the most intuitive methods with a strong sense feedback of finger after pushing a key, while we couldn't imagine a touch-based keyboard without any physical keys.
4343

4444
**Q. Put any question on [issues](https://github.com/lgeweb/spatial-navigation/issues) of this repository :D**
4545
- Everything for Snav is welcome!

0 commit comments

Comments
 (0)