Fix and refactor interaction

Now data-interaction=keyboard is set only when `tab`, `enter`, `space`, `arrows` is pressed.