Rationale
People who use screen readers or refreshable braille displays may find page refreshes or time-outs confusing or disorientating as it is not always clear what is happening. Part of this confusion is due to the fact that changes are occurring with the page without the user having interacted with the page or triggered and change themselves.
Screen readers use a "virtual cursor" to mark the current location on the page. It is not the same as a mouse cursor, or necessarily synchronised with a mouse cursor. Causing a page to refresh or time-out will reset the virtual cursor to the top of the page. This means people using speech and braille output must begin working through the page from the start once again. If the page is a form it can mean that a user has to start inputting data from start again.
People who use screen magnification software can also become confused when suddenly the contents of the page change. This experience is very frustrating.
Providing proper warnings and explanations for people who use access technology will reduce the problems they experience from websites that use these techniques. People will find websites much more usable if they can control refreshes and time-outs. Website owners can then keep the functionality that may be necessary for security or delivering up to date information but without causing barriers of access.
Techniques
-
Warn users that a page will refresh or time-out. If a page refreshes after five minutes provide instructions that it will do so. Having a piece of explanatory text at the start of the page can do this ie "This page refreshes every three minutes". Also provide an on / off switch (see the section on providing an on / off switch below).
If the site times-out after a specific amount of time, for example if it is in a secure area of a site such as a bank, have explanatory text on the entry page ie "This site will time out after five minutes of inactivity then you must log in again".
-
Provide an on / off switch on pages that automatically refresh for those users that do not want it to refresh. For example, financial websites often have an automatic page refresh so they can update financial information. Providing a switch to turn it on and off gives the user the choice of if they want to have this feature or not.
-
Combo-boxes that trigger page refreshes should not be used. For menus that use drop-down combo-boxes, provide a "Go" button. This will help people to make sure they have selected the correct option before launching it. Not providing a "Go" button will force a user to trigger change even if they don't want to. For example a screen reader user will have to tab through all the menu items in order to know what is there. Tabbing away from the menu will trigger a page refresh regardless of if they want to or not.
-
Server-side page refreshes should always be used rather than client-side page refreshes.
Testing tips
Verify that warnings are provided for page refreshes and time-outs and ensure that redirects are carried out server-side.
-
Accessibility toolbar - Go to Doc Info - Metadata Information [new window].
-
Browser - Visually check pages for warnings and on / off switches.
Compliance with WCAG 1.0
-
7.4 Until user agents provide the ability to stop the refresh, do not create periodically auto-refreshing pages. Priority 2
-
7.5 Until user agents provide the ability to stop auto-redirect, do not use markup to redirect pages automatically. Instead, configure the server to perform redirects. Priority 2
For more information on techniques visit the
Web Accessibility Initiative techniques page.