Failure of Success Criterion 3.2.5 due to complete change of main content through an automatic update that the user cannot disable from within the content

Important Information about Techniques

See Understanding Techniques for WCAG Success Criteria for important information about the usage of these informative techniques and how they relate to the normative WCAG 2.1 success criteria. The Applicability section explains the scope of the technique, and the presence of techniques for a specific technology does not imply that the technology can be used in all situations to create content that meets WCAG 2.1.

Applicability

General

This technique relates to Success Criterion 3.2.5: Change on Request (Failure).

Description

This document describes a failure that occurs when the content in the main viewport viewport is automatically updated, and there is no option for a user to disable this behavior.

Two procedures are presented below to test for the existence of a failure against Success Criterion 3.2.5. Procedure 1 is the preferred procedure and assumes that content authors have access to the code that generates the viewport content.

However there may be instances where this may not be possible (eg: in certain content management systems, application environments such as django or ruby-on-rails, or content generated through scripting languages such as AJAX or PHP that are generated by third parties.) To that end, the second procedure is supplied to allow testing in these instances. Note that timeframes are indicative only, and that any change after any amount of time should be treated as a failure if the test otherwise does not pass the other step evaluations.

Examples

Example 1

A news site automatically refreshes itself to ensure that it has the newest headlines. There is no option to disable this behavior.

Example 2

A slideshow fills the entire viewport and advances to the next slide automatically. There is no stop button.

Example 3

A search engine automatically generates results and dynamically updates content based on user input. There is no option to disable this behavior.

Tests

Procedure

  1. Open the source code in an appropriate editing tool.
  2. Examine the source code thoroughly.
  3. Confirm that content is dynamically generated or the code will trigger a change of context for the viewport on an event or after a time period.
  4. Confirm that there does not exist an appropriate mechanism for users to disable this behavior.

Expected Results

  • If both checks 3 and 4 are true, then this failure condition applies and the content fails this Success Criterion

Procedure

  1. Measure or estimate the amount of time that the average user spends on the page.
  2. Go to the page
  3. Wait for 10 times the length of time the average user stays on the page. (From Step 1)
  4. Check to see if there is a change in context during this time.
  5. If there is no change of context STOP.
  6. If there is a change in context, then check to see if there is any mechanism on the page that would have prevented that change of context.
  7. If there IS a mechanism for preventing that change of context, use that mechanism to prevent that change of context and run the test over.
  8. If there is a change of context and there are no mechanism to prevent that change in context then you have a failure.
Note

One way to measure or estimate the amount of time in step 1 would be to check a web site's analytics to see how long the average user looks at the page.

An example of step 6 would be a mechanism for turning off auto updates.

Expected Results

  • If you reach step 8 then the content fails this success criterion.