16.0.9 • Published 2 years ago

itsa-react-focuscontainer v16.0.9

Weekly downloads
5
License
BSD-3-Clause
Repository
github
Last release
2 years ago

Build Status

Sorry, this module is not yet documented and tested. It does work though! So you can use its powerfull features.

The focuscontainer adds a wrapper over items that should be focussable by keyboard movement.

Look at the the file lib/component.jsx for the properties to use.

Features:

  • Adds keyboard focussing
  • Focus stays inside the container
  • Specify which keys trigger the focus
  • Specify which element should be focussed (even non-focussable elements)
  • Focussed elements outside the view get inside through transition
  • Life: keeps on doing its job when descendant React-Components change
  • Container gets labelled with a class itsa-focuscontainer-focussed when descendant element has focus
  • Works with nested focus-containers

How to use:

const React = require("react"),
    ReactDOM = require("react-dom"),
    FocusContainer = require("itsa-react-focuscontainer");

ReactDOM.render(
    <FocusContainer transitionTime={300} >
        <input type="text" />
        <input type="text" />
        <input type="text" />
        <button>Press me</button>
    </FocusContainer>,
    document.getElementById("component-container")
);

Or nested:

.itsa-focuscontainer:focus {
    border-style: dotted;
}
const React = require("react"),
    ReactDOM = require("react-dom"),
    FocusContainer = require("itsa-react-focuscontainer");

ReactDOM.render(
    <FocusContainer transitionTime={300} >
        <input type="text" />
        <input type="text" />
        <input type="text" />
        <FocusContainer
            keyEnter={13}
            transitionTime={300} >
            <input type="text" />
            <input type="text" />
            <input type="text" />
        </FocusContainer>,
        <button>Press me</button>
    </FocusContainer>,
    document.getElementById("component-container")
);

If you want to express your appreciation

Feel free to donate to one of these addresses; my thanks will be great :)

  • Ether: 0xE096EBC2D19eaE7dA8745AA5D71d4830Ef3DF963
  • Bitcoin: 37GgB6MrvuxyqkQnGjwxcn7vkcdont1Vmg
16.0.9

2 years ago

16.0.8

7 years ago

16.0.7

7 years ago

16.0.6

7 years ago

16.0.5

7 years ago

16.0.4

8 years ago

16.0.3

8 years ago

16.0.2

8 years ago

16.0.1

8 years ago

16.0.0

8 years ago

15.0.42

9 years ago

15.0.41

9 years ago

15.0.40

9 years ago

15.0.39

9 years ago

15.0.38

9 years ago

15.0.37

9 years ago

15.0.36

9 years ago

15.0.35

9 years ago

15.0.34

9 years ago

15.0.33

9 years ago

15.0.32

9 years ago

15.0.31

9 years ago

15.0.30

9 years ago

15.0.29

9 years ago

15.0.28

9 years ago

15.0.27

9 years ago

15.0.26

9 years ago

15.0.25

9 years ago

15.0.24

9 years ago

15.0.23

9 years ago

15.0.22

9 years ago

15.0.21

9 years ago

15.0.20

9 years ago

15.0.19

9 years ago

15.0.18

9 years ago

15.0.17

9 years ago

15.0.16

9 years ago

15.0.15

9 years ago

15.0.14

9 years ago

15.0.13

9 years ago

15.0.12

9 years ago

15.0.11

9 years ago

15.0.10

9 years ago

15.0.9

9 years ago

15.0.8

9 years ago

15.0.7

9 years ago

15.0.6

9 years ago

15.0.5

9 years ago

15.0.4

9 years ago

15.0.3

9 years ago

15.0.2

9 years ago

15.0.1

9 years ago