Understanding WCAG 2.0

Skip to Content (Press Enter)

SCR14: A nem kritikus riasztások választhatóvá tétele a szkriptek segítségével

Alkalmazás

Szkript technológiák, amelyek szkript riasztásokat használnak a nem vészhelyzeti kommunikációhoz.

Ez a technika az alábbiakra vonatkozik:

Leírás

A technika célja egy párbeszédablak (riasztás) megjelenítése a felhasználó felé. A riasztás megjelenésekor automatikusan fókuszba kerül, amelyet a felhasználó csak az OK gomb megnyomásával tüntethet el. A riasztások okozta fókuszváltozás megzavarhatja a felhasználót, különösen akkor, ha a riasztás nem kritikus információt jelenít meg. Az olyan nem kritikus riasztások, mint például a nap idézete, hasznos tipp, vagy egy várható eseménnyel kapcsolatos visszaszámlálás, nem jelennek meg a képernyőn, hacsak a felhasználó nem engedélyezi azt.

Ez a technika egy globális JavaScripttel szabályozza a felhasználó riasztásokkal kapcsolatos beállításait. Az alapértelmezett érték hamis. A csomagoló funkció ellenőrzi a szabályozó értékét, mielőtt megjelenne a riasztás. A riasztás megjelenítésére vonatkozó utasítás először a csomagoló funkcióhoz érkezik be és közvetlenül nem a riasztást aktiválja. Az oldal elején egy gomb található, amellyel a felhasználó a lapon lévő riasztásokat aktiválhatja. A technika látogatás alapon működik. Az oldal minden egyes letöltésekor a riasztások passzív módba kerülnek és a felhasználónak kell aktiválnia őket. A szerkesztő a beállítások tárolására cookie-kat is használhat.

Példák

1. példa

Az alábbi szkript tíz másodperceként jelenít meg egy idézetet, ha a felhasználó a "Riasztások bekapcsolása" gombot választja. A felhasználó ki is kapcsolhatja az idézeteket a "Riasztások kikapcsolása" gombbal.

Példa kód:


<script type="text/javascript">
var bDoAlerts = false;  // global variable which specifies whether to 
                                       // display alerts or not
/* function to enable/disable alerts.
 * param boolean bOn - true to enable alerts, false to disable them.
*/
function modifyAlerts(isEnabled) {
   bDoAlerts = isEnabled;
}
/* wrapper function for displaying alerts.  Checks the value of bDoAlerts
*and only calls the alert() function when bDoAlerts is true.
*/
function doAlert(aMessage) {
    if (bDoAlerts) {
       alert(aMessage);
    }
}
// example usage - a loop to display famous quotes.
var gCounter = -1;  // global to store counter
// quotes variable would be initialized with famous quotations
var quotes = new Array("quote 1", "quote 2", "quote 3", "quote 4", "quote 5");
function showQuotes() {
   if (++gCounter &gt;= quotes.length) {
     gCounter = 0;
   }
   doAlert(quotes[gCounter]);
   setTimeout("showQuotes();", 10000);
}
showQuotes();
</script>

Az oldal body elemében megtalálható a riasztások be-és kikapcsolásának módja. A következőkben erre látható egy példa:

Példa kód:


<body>
<p>Press the button below to enable the display of famous quotes 
using an alert box<br />
<button id="enableBtn" type="button" onclick="modifyAlerts(true);">
Turn Alerts On</button><br />
<button id="disableBtn" type="button" onclick="modifyAlerts(false);">
Turn Alerts Off</button></p>

A Demonstration of Alerts.című részben a kód működő példája található.

Ellenőrzések

Folyamat

Egy olyan weblap esetében, amely támogatja a JavaScript alapon működő nem kritikus riasztásokat:

  1. Töltse be a weboldalt és engedélyezze a nem kritikus riasztások megjelenését.

  2. Ellenőrizze, hogy létezik-e a nem kritikus riasztásokat aktiváló mechanizmus.

  3. Aktiválja a nem kritikus riasztásokat és ellenőrizze, hogy megjelennek-e.

Elvárható eredmények
  • Olyan weblapok esetében, amelyek JavaScript alapú riasztásokat alkalmaznak, az 1. 2. és 3. pontok igazak.


Teljesítési feltételek: