Techniken für WCAG 2.0

Zum Inhalt

-

SCR16: Bereitstellung eines Scripts, das den Benutzer warnt, dass eine zeitliche Begrenzung bald abläuft

Anwendbarkeit

Es gibt zeitliche Begrenzungen, die von einem Skript gesteuert werden.

Die Technik bezieht sich auf:

Beschreibung

Das Ziel dieser Technik ist es, Benutzer zu benachrichtigen, dass die Zeit zur Fertigstellung einer Interaktion fast abgelaufen ist. Wenn Skripte Funktionalitäten, die zeitliche Begrenzungen haben, bereitstellen, kann das Skript eine Funktionalität enthalten, um den Benutzer vor den unmittelbar bevorstehenden zeitlichen Begrenzungen zu warnen und um einen Mechanismus bereitzustellen, mehr Zeit zu erbitten. 20 Sekunden oder mehr, bevor die zeitliche Begrenzung auftritt, stellt das Skript einen Bestätigungsdialog zur Verfügung, der besagt, dass eine zeitliche Begrenzung unmittelbar bevorsteht und fragt, ob der Benutzer mehr Zeit benötigt. Wenn der Benutzer mit „Ja“ antwortet wird die zeitliche Begrenzung zurückgesetzt. Wenn der Benutzer mit „Nein“ antwortet oder gar nicht reagiert, darf die zeitliche Begrenzung ablaufen.

Diese Technik umfasst zeitliche Begrenzungen, die über die window.setTimeout()-Methode festgelegt wurden. Wenn zum Beispiel die zeitliche Begrenzung so eingestellt wurde, dass sie in 60 Sekunden abläuft, dann können Sie die zeitliche Begrenzung auf 40 Sekunden setzen und den Bestätigungsdialog bereitstellen. Wenn der Bestätigungsdialog erscheint, wird eine neue zeitliche Begrenzung für die verbleibenden 20 Sekunden festgelegt. Mit dem Ablauf der „zeitlichen Begrenzung der Schonfrist“ würden die Schritte, die beim Ablauf der 60-Sekunden dauernden zeitlichen Begrenzung in der ursprünglichen Planung eingeleitet worden wären, eingeleitet.

Beispiele

Beispiel 1

Eine Seite mit Kursnotierungen des Aktienmarktes benutzt ein Skript, um die Seite alle fünf Minuten zu aktualisieren um sicherzustellen, dass die neuesten Statistiken weiterhin zur Verfügung stehen. 20 Sekunden bevor der fünf-minütige Zeitraum abläuft erscheint ein Bestätigungsdialog, der fragt, ob der Benutzer mehr Zeit benötigt, bevor sich die Seite aktualisiert. Dies ermöglicht es dem Benutzer, sich über die bevorstehende Aktualisierung bewusst zu sein und diese wenn gewünscht zu vermeiden.

Code-Beispiel:

			<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<title>Stock Market Quotes</title>
<script type="text/javascript">
<!--
function timeControl() {
	// set timer for 4 min 40 sec, then ask user to confirm.
	setTimeout('userCheck()', 280000);
}
function userCheck() {
	// set page refresh for 20 sec
	var id=setTimeout('pageReload()', 20000);
	// If user selects "OK" the timer is reset 
	// else the page will refresh from the server.
	if (confirm("This page is set to refresh in 20 seconds. 
	Would you like more time?"))
	{
	clearTimeout(id);
	timeControl();
	}
}
function pageReload() {
	window.location.reload(true);
}
timeControl();
-->
</script>
</head>
<body>
<h1>Stock Market Quotes</h1>
...etc...
</body>
</html>

Tests

Vorgehensweise

Auf einer Webseite, die eine zeitliche Begrenzung hat, die von einem Skript gesteuert wird:

  1. Laden Sie die Seite und stellen Sie einen Kurzzeitmesser auf 20 Sekunden weniger als die zeitliche Begrenzung.

  2. Wenn der Kurzzeitmesser abläuft prüfen Sie, ob ein Bestätigungsdialog, der vor der bevorstehenden zeitlichen Begrenzung warnt, angezeigt wird.

Erwartete Ergebnisse

Wenn dies eine ausreichende Technik für ein Erfolgskriterium ist, dann bedeutet das Scheitern an diesem Testverfahren nicht zwangsläufig, dass das Erfolgskriterium nicht auf irgendeine andere Art und Weise erfüllt wurde, sondern nur, diese Technik nicht erfolgreich implementiert wurde und nicht benutzt werden kann, um die Konformität zu erklären.