Standardit · WCAG 2.2

SC 2.1.4 Taso A WCAG 2.1

Yksittäisten merkkien pikanäppäimet

Pikanäppäimet, jotka koostuvat pelkästään yhdestä kirjaimesta, numerosta tai symbolista, on voitava poistaa käytöstä, uudelleenmäärittää tai rajata koskemaan vain sitä komponenttia, jolla on kohdistus. Tämä suojaa puheohjausta ja sanelua käyttäviä.

Mitä vaaditaan

Jos sivusto toteuttaa pikanäppäimen, joka käyttää yksinomaan kirjain-, numero-, välimerkkaus- tai symbolinäppäintä — ilman Ctrl-, Alt- tai Shift-lisänäppäintä — on ainakin yhden seuraavista ehdoista täytyttävä:

  • Pikanäppäin voidaan poistaa käytöstä asetusvalikossa.
  • Pikanäppäin voidaan uudelleenmäärittää käyttämään yhtä tai useampaa ei-tulostuvaa näppäintä (Ctrl, Alt, Shift, funktionäppäimet).
  • Pikanäppäin on aktiivinen ainoastaan silloin, kun asianomaisella komponentilla on kohdistus.

Onnistumiskriteeri on luotu ensisijaisesti suojaamaan puhe-ohjausohjelmien käyttäjiä. Dragon NaturallySpeaking ja Voice Control kääntävät puhutut sanat merkkipainalluksiksi — ja irrallinen “k” lauseen keskellä voi laukaista tuhoisat pikanäppäintoiminnon Gmailissa, Slackissa tai muissa sovelluksissa, jotka käyttävät yksittäistä kirjainta pikanäppäimenä.

Miten vaatimus täytetään

  • Auditoitava jokainen yksittäisnäppäimeen perustuva käsittelijä koodipohjasta: keydown- ja keypress-kuuntelijat, jotka tarkistavat event.key-arvon tulostettavaa merkkiä vasten tarkistamatta samalla lisänäppäimiä.
  • Lisättävä “Pikanäppäimet”-asetuspaneeli, jossa käyttäjät voivat poistaa ne kokonaan käytöstä. Gmail ja Slack tekevät tämän hyvin.
  • Vaihtoehtoisesti: rajataan pikanäppäimet toimimaan vain silloin, kun kohdistus on kyseisellä alueella (esim. j/k sähköpostien välillä vain, kun kohdistus on viestilistassa, ei kun käyttäjä kirjoittaa vastausta).
  • Suositaan lisänäppäimiin perustuvia pikanäppäimiä (Ctrl+/, Alt+N) oletuksena; varataan yksittäisnäppäinpikanäppäimet valinnaisen tehokäyttäjätilan taakse.

Yleisimmät puutteet

  • Gmail-tyylinen j/k/r/a-pikanäppäimet, jotka laukeavat mistä tahansa dokumentissa — myös tekstialueissa tietyillä sovelluskehysasetuksilla.
  • Muokatut dataruudukot, joissa Delete poistaa rivin ilman vahvistusta — toimii näppäimistöllä, mutta on ongelmallinen puheohjausta käyttäville, kun he sanovat “poista tuo pilkku”.
  • Videosoittimet, joissa välilyönti vaihtaa toisto/tauko-tilaa globaalisti eikä vain silloin, kun soittimella on kohdistus.
  • Dokumentaatiosivustot, joissa / siirtää kohdistuksen hakuun vaikka kohdistus olisi upotetussa koodieditorissa.

axe-core ei havaitse tätä — se vaatii lähdekooditarkistuksen tai Deque:n laajemman testauskokoelman erityissääntöjä. Suurin osa tuotantovirheistä löydetään vasta, kun puheohjausta käyttävä henkilö tekee reklamaation.

Miksi tällä on merkitystä

Tämä onnistumiskriteeri lisättiin WCAG 2.1:een nimenomaan siksi, että puheohjaimen käyttö kasvoi nopeasti vuoden 2017 jälkeen. Sivusto, joka ei täytä 2.1.4:ää, voi olla käytännössä käyttökelvoton sanelua käyttäville: jokainen lause laukaisee eri toiminnon. Myös näppäimistöä käyttävät henkilöt, joilla on motorinen toimintarajoite ja jotka satunnaisesti painavat väärää näppäintä, hyötyvät mahdollisuudesta poistaa yksittäismerkkipikanäppäimet käytöstä.