Understanding WCAG 2.0

Skip to Content (Press Enter)

SCR20: A billentyűzet és más hardver specifikus funkciók használata

Alkalmazás

Minden szkriptet alkalmazó és funkciót működtető tartalom.

Ez a technika az alábbiakra vonatkozik:

Leírás

A technika célja az eseménnyel társított szkript funkciót tartalmazó kód, illetve a billentyűzet-, és egéresemények együttes használatának szemléltetése. A billentyűzet és egér specifikus események együttes használata biztosítja azt, hogy a tartalom a hardverek széles skáláján megjelenítésre kerülhessen. Egy szkript például ugyanazt a műveletet hajthatja végre a billentyűk lenyomásakor, mint az egérrel való kattintáskor. Ez a technika túlmutat a billentyűzet használatával kapcsolatos teljesítési feltételen, mivel a billentyűzettel kapcsolatos feltételek mellett más hardverekkel kapcsolatos előírásokat is teljesíti.

A JavaScriptben általános elterjedt az onblur, onchange, onclick, ondblclick, onfocus, onkeydown, onkeypress, onkeyup, onload, onmousedown, onmousemove, onmouseout, onmouseover, onmouseup, onreset, onselect, onsubmit és onunload eseménykezelők használata. Bizonyos egér funkcióknak megvan a billentyűzeten végrehajtható megfelelője is (mint például az 'onmouseover' and 'onfocus'). Az egér eseménykezelőkkel megegyező funkciójú billentyűzet eseménykezelők biztosítása mindenképpen ajánlott.

Az alábbi táblázatban egymásnak megfelelő billentyűzet és egér eseménykezelők kerültek feltüntetésre.

Egymásnak megfelelő hardverkezelők
Használat.... ...ezzel
mousedown keydown
mouseup keyup
click [1] keypress [2]
mouseover focus
mouseout blur

1Habár a klikkelés elsődleges egér eseménykezelő, a legtöbb HTML és XHTML alapú felhasználói program csak a vezérlés aktiválása után hajtja végre az eseményt, attól függetlenül, hogy ezt az egérrel vagy a billentyűzettel aktiválták. A gyakorlatban azonban nincs szükség az esemény duplikálására. Ez a vonás a teljesség kedvéért került itt említésre, mivel a nem-HTML felhasználói programok is rendelkeznek ezzel a tulajdonsággal.

2 Mivel a billentyű lenyomásával aktivált eseménykezelő bármelyik billentyűvel működésbe hozható, ezért a funkció esetében először azt kell ellenőrizni, hogy az Enter billentyű lenyomásra került-e az esemény kezelés megvalósítása előtt. Máskülönben az eseménykezelő minden egyes billentyű lenyomásakor működésbe lép, még akkor is, ha a tab billentyű elhagyja a vezérlőt, és ez általában nem hasznos tulajdonság.

Bizonyos egér specifikus funkciók (mint például a dblclick és mousemove) nem rendelkeznek a billentyűzettel végrehajtható megfelelővel. Ez azt jelenti, hogy bizonyos funkciókat egymástól függetlenül kell a különböző hardvereken érvényesíteni (például számos billentyűkkel kezelhető gombnak meg kell alkotni az egérrel is működtethető változatát).

Példák

1. példa

Az alábbi példában egy képi hivatkozás szerepel, amely megváltozik, ha a felhasználó az egérrel rámutat. A billentyűzetet használók a képre való rálépéssel érhetik el ugyanezt a hatást.

Példa kód:


<a href="menu.php" onmouseover="swapImageOn('menu')" onfocus="swapImageOn('menu')" 
onmouseout="swapImageOff('menu')" onblur="swapImageOff('menu')"> 
<img id="menu" src="menu_off.gif" alt="Menu" /> 
</a>
2. példa

Az alábbi példában egy billentyűzettel aktiválható kép szerepel. Az onclick egéresemény a neki megfelelő onkeypress billentyűzet eseménnyel került duplikálásra. A kép a tabindex attribútum segítségével jelölhető meg a billentyűzettel. Fontos, hogy a példában az Enter billentyű lenyomását a nextPage()funkcióval ellenőrizni kell, mert ellenkező esetben a képre történő fókuszáláskor a művelet minden billentyű lenyomására végrehajtásra kerül, ami nem kívánatos viselkedés.

Példa kód:


<img onclick="nextPage();" onkeypress="nextPage();" tabindex="0" src="arrow.gif" 
alt="Go to next page"> 

Megjegyzés: Ebben a példában tabindex kerül alkalmazásra a képi elemen. A módszer érvénytelensége ellenére ez egy olyan átmeneti technikát biztosít, amely hozzájárul a funkció működéséhez.

Források

A források csak információs célokat szolgálnak, és csak angolul elérhetőek.

Ellenőrzések

Folyamat
  1. Keresse meg az összes interaktív funkciót.

  2. Ellenőrizze, hogy az interaktív funkciók csak a billentyűzeten keresztül használhatók-e.

Elvárható eredmények
  • A 2. pont igaz.

Teljesítési feltételek: