Understanding WCAG 2.0

Skip to Content (Press Enter)

SCR16: Az időkorlát lejártára figyelmeztető szkript alkalmazása

Alkalmazás

Szkripttel szabályozott időkorlát.

Ez a technika az alábbiakra vonatkozik:

Leírás

A technika célja az, hogy figyelmeztesse a felhasználót az adott feladatra szánt idő végének közeledtéről. Abban az esetben, ha a szkript időkorlátos funkcióval rendelkezik, akkor a szkriptnek az idő lejárta előtt figyelmeztetnie kell a felhasználót és lehetőséget kell adnia az időkorlát kiterjesztésére. A szkriptnek legalább 20 másodperccel az időkorlát lejárta előtt egy párbeszédablakban jeleznie kell az idő lejártát és meg kell kérdeznie a felhasználót, hogy szüksége van-e több időre. Abban az esetben, ha a felhasználó "igen"-el válaszol, az időkorlát törlésre kerül. Nemleges válasz esetén, vagy válasz hiányában, az időkorlát lejár.

Ennek a technikának a keretében az időkorlát a window.setTimeout()módszerrel kerül beállításra. Abban az esetben, ha az időkorlát 60 másodpercben kerül meghatározásra, a szerkesztő beállíthat 40 másodpercet, amelyet egy párbeszédablak jelez. A párbeszéd ablak megjelenésekor a maradék 20 másodpercre egy új időkorlát kerül meghatározásra. Az időkorlát türelmi idejének lejártakor bekövetkezik az eredetileg beállított 60 másodperc végére tervezett esemény.

Példák

1. példa

Egy tőzsdei lap, a legújabb statisztikák megjelenítése céljából, minden ötödik percben szkriptek segítségével frissíti a megjelenített adatokat. Húsz másodperccel az öt perces időkorlát lejárta előtt egy párbeszédablakban a felhasználó további időszükségletére irányuló kérdés jelenik meg. Ezáltal a felhasználó értesítést kap a küszöbön álló frissítésről és szükség esetén elkerülheti azt.

Példa kód:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"<url>http://www.w3.org/TR/html4/loose.dtd">http://www.w3.org/TR/html4/loose.dtd</title>">
<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>

Ellenőrzések

Folyamat

Egy szkripttel szabályozott időkorláttal rendelkező weboldal esetén:

  1. Töltse le a lapot és indítson el egy időzítőt, amely 20 másodperccel rövidebb az időkorlátnál.
  2. Az időzítő lejártakor ellenőrizze az idő lejártára figyelmeztető párbeszédablak megjelenését.
Elvárható eredmények
  • A 2. pont igaz.

Teljesítési feltételek: