Siirry sisältöön
SilktideOhje

Osoittimen peruuttaminen

Silktide tunnistaa painikkeet ja linkit, jotka toimivat heti, kun niitä painetaan alas, sen sijaan että ne toimisivat vasta, kun painallus vapautetaan. Toimiminen vapautettaessa antaa ihmisille mahdollisuuden korjata väärän kohteen painaminen liu'uttamalla osoittimen pois ennen vapauttamista.

Miksi tämä on tärkeää

Jokainen painaa toisinaan väärää painiketta, mutta vapinasta, rajoittuneesta näppäryydestä tai heikosta näöstä kärsivät ihmiset tekevät niin paljon useammin. Yleinen palautusele on pitää painallus pohjassa, vetää osoitin pois ohjausobjektista ja vapauttaa se – tämä toimii, koska painikkeet ja linkit toimivat tavallisesti vapautettaessa. Ohjausobjekti, joka on määritetty reagoimaan ensimmäiseen painallukseen, poistaa tämän pakotien: toiminto käynnistyy välittömästi eikä sitä voi keskeyttää. Lomakkeen lähetys- tai poistopainikkeessa yksi lipsahdus muuttuu peruuttamattomaksi virheeksi.

Tämä on -menestyskriteeri 2.5.2 (Osoittimen peruuttaminen), vaatimus – osa vaatimustenmukaisuuden perustasoa.

Kuinka korjata se

  1. Käynnistä toiminnot click-tapahtumasta, joka käynnistyy vapautettaessa, äläkä tapahtumista mousedown, pointerdown tai touchstart.
  2. Jos ohjausobjektin todella on reagoitava ensimmäiseen painallukseen – esimerkiksi musiikkisovelluksen pianon koskettimen – varmista, että ohjausobjektin ulkopuolella vapauttaminen kumoaa tai keskeyttää toiminnon, tai tarjoa kumoa-toiminto.
  3. Jos merkitty kuuntelija ei todellisuudessa käynnistä toimintoa (se voi esimerkiksi vain lisätä painetun tilan visuaalisen tehosteen), voit havainnon.
// Ongelma: käynnistyy heti painettaessa, ei voi peruuttaa
button.addEventListener('mousedown', submitForm);

// Korjaus: käynnistyy vapautettaessa, joten pois vetäminen peruuttaa sen
button.addEventListener('click', submitForm);

Miten Silktide testaa tämän

  1. Lataa jokainen sivu oikeassa selaimessa ja tallenna sen rekisteröimät -tapahtumakuuntelijat.
  2. Etsi painalluksen aloitustapahtumien kuuntelijat: mousedown, pointerdown ja touchstart.
  3. Raportoi kuuntelija, kun se on liitetty ohjausobjektiin, joka aktivoituu tavallisesti vapautettaessa: painikkeeseen, linkkiin, lähetys- tai palautussyötteeseen tai elementtiin, jolla on -rooli, kuten button, link, menuitem, tab tai switch.
  4. Ohita koko sivua koskevat kuuntelijat, joita ei ole liitetty tiettyyn ohjausobjektiin ja jotka yleensä liittyvät vierityksen tai vedä ja pudota -toiminnon käsittelyyn aktivoinnin sijaan.
  5. Koska Silktide ei voi päätellä, mitä kuuntelijan koodi tekee, havainnot merkitään vahvistettaviksi sen sijaan, että ne laskettaisiin vahvistetuiksi virheiksi.

Vianmääritys

Kuuntelija ei aktivoi mitään

Painalluksen aloitustapahtumien kuuntelijoita käytetään usein harmittomiin tehosteisiin: painetun tilan tyyliin, aaltoanimaatioon tai kohdistuksen hallintaan, kun varsinainen toiminto on edelleen click-tapahtumassa. Tämä täyttää kriteerin; hyväksy havainto.

Ohjausobjekti on liukusäädin tai vetokahva

Liukusäätimet, vetokahvat ja vastaavat pienoisohjelmat seuraavat perustellusti ensimmäistä painallusta. WCAG pitää painalluksen aloitustapahtumaa olennaisena näissä vuorovaikutuksissa; hyväksy havainto.

Lue lisää

Viimeksi päivitetty

Oliko tästä sivusta apua?