Daily Accessibility

Streak: 0 days — 0 of 86 criteria seen

§2.5.6 · WCAG 2.2

Concurrent Input Mechanisms

Level AAAOperable

What this means

A page shouldn't arbitrarily restrict which input method a user can use. It shouldn't force touch-only interaction on a device that also supports a mouse, keyboard, or stylus. It also shouldn't disable keyboard input just because a touch event happened recently. Users should be free to switch between whatever input methods their platform supports, and even use more than one at once, like typing on a keyboard while also using a touchpad. The exception is when restricting a particular input is essential to the function, or needed for security, such as requiring a physical key press for a sensitive confirmation.

Who it affects

People often rely on more than one input method, depending on the task, their physical state that day, or what's convenient in the moment. Someone might switch between a stylus and a finger on a tablet, or use a mouse for precise pointing and a keyboard for text entry in the same session. People with fluctuating or situational disabilities, such as a temporary hand injury, may need to switch input methods on the fly. Rigid restrictions locking them into one input type can turn a minor inconvenience into a hard barrier.

Code example

Bad

// Disables keyboard focus and interaction entirely once a touch
// event is detected anywhere on the page, locking the user into
// touch-only input for the rest of the session
document.addEventListener('touchstart', () => {
  document.body.classList.add('touch-only-mode');
  disableKeyboardHandlers();
});

Good

// Touch and keyboard/mouse input remain simultaneously available;
// detecting one input type doesn't disable the others
document.addEventListener('touchstart', () => {
  document.body.classList.add('touch-active-styles');
  // Keyboard handlers remain fully functional
});

How to test it

On a device that supports multiple input methods, such as a touchscreen laptop with a keyboard, trackpad, and touch all available, try switching between them mid-task. Start an interaction with touch, then continue it with the keyboard or mouse, and try it the other way too. Suppose using one input method disables or breaks the others, or the page locks you into a single mode after your first interaction. This fails, unless that restriction is essential or security-related.

Check your understanding

A web app running on a touchscreen laptop detects the first touch interaction and then disables all mouse and keyboard event handlers for the remainder of the session, forcing the user to continue with touch only. Does this pass SC 2.5.6 Concurrent Input Mechanisms?