For mobile devices or tablets where if there is functionality triggered by a single pointer, at least one of the following is true:
The down-event of the pointer is not used to ‘fire’ the function;
Stop the action or Undo
The function is triggered on the up-event, and a method is available to stop completion or undo the function;;
The up-event reverses what happens on the down-event;
Completing the function on the down-event is essential.
Why is this a problem?
This aims to reduce accidentally triggering things on a page. Any interaction were a control fires as soon as it is touched is problematic for a range of users (and not just disabled users). It is better when there is a way to ‘undo’ or change your mind. This is what the success criterion aims to address and will help people with visual disabilities, cognitive disabilities, and motor impairments.
However, it can present problems for users with dexterity issues.
Accessibility Requirements for 2.5.2 pointer Cancellation (A)
- Simply make activation of any function occur on the up-event. This is where the control is released by the user. This can be by the users finger or a mouse for example. Using the click event by default will only trigger the event on release.
- To ‘Cancel’ or ‘Undo’ a function. You can add a ‘confirmation dialog’ or an ‘undo button’. This asks the user to confirm the interaction and by doing so, you give them time to reflect and choose one way or another.
- Up Reversal: You can design a control where the down-event trigger an action that can be reversed when the up-event is ended. Examples of this include press-and-hold actions such which make a popup appear and on release it disappears.
- Some just things will need to fire on the ‘down-event’ such as games or on screen keyboards.
What are down-events?
A down-event is when an action is caused to ‘fire’ when the trigger stimulus of a pointer (like a finger) is pressed.
The down-event may have different names, such as “touchstart” or “mousedown”.
What are up-events?
A up-event is when an action is caused to ‘fire’ when the trigger stimulus of a pointer (like a finger) is released.
The up-event may have different names, such as “touchend” or “mouseup”.
Common mistakes for 2.5.2 pointer Cancellation (A)
- Allowing controls or user interface components to fire as soon as they are touched.
- After a user has made a selection of a user interface component, there is no way to dismiss the selection or undo the function.
Techniques for 2.5.2 pointer Cancellation (A)
Each numbered item in this section represents a technique or combination of techniques that the WCAG Working Group deems sufficient for meeting this Success Criterion. However, it is not necessary to use these particular techniques. For information on using other techniques, see Understanding Techniques for WCAG Success Criteria, particularly the “Other Techniques” section.
Common Failure for 2.5.2 pointer Cancellation (A)
The following are common mistakes that are considered failures of this Success Criterion by the WCAG Working Group.
- FM001 Failure of SC 2.5.3 due to activating a button on initial touch location rather than the final touch location
FAQs for Pointer Cancellation (A)
What are the objectives for Pointer Cancellation
1.Ensure that actions are only taken when a pointer is clicked and released within the boundary of the target.
2.Abort actions where the pointer is released outside the boundary of the target.
Exceptions to Pointer Cancellation
Whenever it’s essential for the action to occur on the down-click.
It is relevant to keyboard emulators, where a letter appears typed on the down-press of a key (and therefore the down-press of a mouse in an emulator. A music keyboard or shooting game may also need the action to complete on the down-click. In these instances there are often other ways for users to change an action that don’t need pointer cancellation.
Why is it important?
People with motor disabilities can accidentally trigger touch or mouse events with unwanted results. Activation can occur when someone touches a screen (down-event) or when they remove their finger (up-event). In mouse interaction, activation can occur when pressing (down-event) or when releasing the mouse button (up-event). Authors can reduce the problem of users inadvertently triggering an action by making activation on the up-event. This gives users the opportunity to move their finger or other pointer (e.g. mouse) away from the wrong target once they hit it.
Related to 2.5.2 pointer Cancellation (A)