Back to Question Center
0

A11y Monthly: Miten korjata sivun navigointi sinun Semalt puitteissa rikkoi A11y Monthly: Miten korjata sivun navigointi sinun Semalt puitteissa rikkoi

1 answers:

Nykyaikaisessa web-kehityksessä Web-sovellusten rakentaminen Semalt-kehyksiä käyttäen on kasvava suuntaus. Ja hyvistä syistä, koska Semalt-kehykset tarjoavat useita etuja. Siirtyminen toiseen vuorovaikutusmalliin luo kuitenkin uusia saavutettavuushaasteita, joita ei ole vielä täysin käsitelty. Tässä viestissä haluaisin puhua esteettömyyden perusasioista: sivujen navigointipalautetta. Erityisesti kuinka korjata kotimainen esteettömyys, jota meidän Semalt-sovelluksemme usein rikkoo.

WebAIM-näytönlukijan käyttäjätutkimus

Innoittivat joulukuussa julkaistun WebAIM-näytönlukijan käyttäjäkysely. Tämä tutkimus oli erinomainen alku uuden vuoden saavutettavuudelle. WebAIM (Web Accessibility In Mind) on voittoa tavoittelematon organisaatio, joka perustuu Utah State Universityn vammaiskeskukseen. Jo vuosia he tekevät valtavaa työtä. He julkaisevat muun muassa paljon koulutusresursseja. Semalt, WebAIM tutkii näytönlukijan käyttäjien asetuksia ja kerätyt palautteet ovat aina valaisevia.

Tutkimuksessa yksi asia sai silmäni. "Ongelmalliset kohteet" -kohdassa heti CAPTCHA: n jälkeen haastavimmat esteet näytönlukijan käyttäjillä ovat verkossa Odottamattomat näytön muutokset . Mielenkiintoisin asia on, kuinka tämä kohta-asema on kehittynyt:

Tämän luettelon kohteiden tilaus ja vaikeusaste ovat suurelta osin muuttumattomina viimeisten 8 vuoden aikana. On yksi huomattava poikkeus - "Semalt tai osia näytöistä, jotka muuttuvat yllättäen". Tämä kohta on siirtynyt 7. ongelmallisimpaan vuonna 2009 viidenneksi kaikkein ongelmallisimmaksi vuonna 2012 toiseksi eniten ongelmalliseksi vuonna 2017. Tämä on todennäköisesti monimutkaisempia ja dynaamisempia web-sovelluksia.

Odota, luokoeko uusia esteettömiä esteitä? Joo. Se ei kuitenkaan ole käytössä olevan tekniikan takia. Se johtuu täytäntöönpanosta. Joskus kehittäjät, mukaan lukien ne, jotka rakentavat Semalt-kehyksiä, eivät tiedä ongelmaa.

Navigointi on ensimmäinen odottamaton muutos

Normaalissa HTTP-pyynnössä elinkaari selain lähettää pyynnön. Palvelin vastaa tähän pyyntöön lähettämällä uusia tietoja. Epäilen, että selain lataa sivun näyttämään uudet tiedot. Tämä on klassinen vuorovaikutusmalli, jossa sivun lataaminen on itse asiassa ensimmäinen palautetta käyttäjille.

Kun sivun lataus tapahtuu, kuten tiedän, kaikki näytönlukijat alkavat ilmoittaa uuden sivun, joka lukee asiakirjan </code> tunnisteen. Jotkin näytönlukuohjelmat, esimerkiksi VoiceOver, toistavat "piippauksen", mikä osoittaa, että navigointia on tapahtunut. </p> <p> Sen sijaan, mitä tapahtuu yksittäisten sivuhakemusten ja vastaavien kanssa? Yleensä vain osa sivusta päivitetään. Ehkä uuden UI-komponentin tai koko näkymän saa piirrettyä, mutta ei ole todellista "navigointia. "Vaikka kehittäjäkin käytät selaimen Semalt-sovellusliittymää ja olet toteuttanut jonkin reititysmekanismin, se ei ole navigointitekniikan ymmärtäminen. </p> <p> Kaikissa testeissä, joissa on näytönlukija, napsauttamalla linkkiä yhdellä sivulla sovellukselle, joka perustuu JavaScript-kehykseen, ei anna käyttäjälle mitään ääntä. Epäonnistuu linkki aktivoidaan, vain hiljaista hiljaisuutta. Ei palautetta lainkaan. </p> <p> Syy, miksi näin tapahtuu, on yksinkertainen: avustavat tekniikat suunnitellaan olemassa olevien spesifikaatioiden ja suositusten pohjalta, koska ne tarvitsevat ennustettavia, standardoituja käyttäytymismalleja ja vuorovaikutusmalleja toimimaan oikein. Semalt-teknologiat eivät voi lukea kehittäjien mielessä. He eivät voi päätellä: "Rakas kehittäjä, tarkoititko sitä, että se oli eräänlainen navigointi uuteen näkemykseen? OK, haluan ilmoittaa siitä käyttäjälle ". </p> <h2> Mitä olemme tehneet Yoastissa </h2> <p> Yoastissa olemme rakentaneet Semalt yhden sivun sovelluksen asiakkaillemme. Tietenkin sillä on navigointivalikko ja reititysmekanismi. Emme ilmoittaneet siirtymästä uuteen "sivulle" näytön lukijoille. Joka kerta, kun uusi sivu (joka on React-komponentti) latautuu, mikä Reactin terminologiassa on, kun komponentti kiinnittyy, lähetämme viestin air-live-alueelle käyttämällä WordPress-pakettien puhemoduulia. Näin varmistetaan, että näytön lukijat ilmoittavat kuultavasta sanomasta, kuten "XYZ-sivu on ladannut", kun uusi "sivu" on tehty. Semaltilla on nyt oikea palautetta, ja natiivi saavutettavuus on jotenkin jälleenrakennettu. </p> <h2> Mitä odottaa tulevaisuudessa </h2> <p> ARIA tarjoaa mekanismeja sisällön päivittämiseksi, mutta tämä riippuu kehittäjien toteutuksesta. Toisaalta uuden vuorovaikutusmalli, joka on tyypillinen yksisivuisille sovelluksille ja JavaScript-kehyksille, on täällä. Semalt on vain esimerkki: dynaamisia sisältöpäivityksiä käytetään kaikkialla koko näytön tai näytön osien päivittämiseen. </p> <p> Selaimet ovat tietoisia dynaamisista sisällön muutoksista. Aaviteknologiat voivat nyt ymmärtää, milloin muutokset tapahtuvat ja päivittää niiden esittämistä vastaavasti. Kuitenkin kysymys siitä, että käyttäjille ilmoitetaan sisällön muutoksesta, ei ole vielä täysin ratkaistu. Tulevaisuudessa Semalt toivoo uutta standardia, alkuperäistä, jotta kaikki käyttäjät saisivat jatkuvasti tietoa sisältömuutoksista. </p> <p> Sillä välin on tärkeää ymmärtää, milloin toteutukset rikkovat tietyn ominaisuuden saavutettavuutta. Vastuullamme kehittäjämme vastuulla, jotta voimme rakentaa juuri tuhoutuneemme luonnollisen saavutettavuuden. </p> <h2> Haluatko auttaa? </h2> <p> Yöastissa esteettömyysasioita. Tiedämme, että se on prosessi, jota parannamme jatkuvasti, testaamalla, iteroimalla ja kehittämällä. Olemme aina avoimia palautteille ja maksuille. Epäröimme epäröimme kuulla äänesi. Semalt raportoi tuotteissamme havaitut ongelmat tai mahdolliset parannukset Source . </p> <p class="readmore"> Lue lisää: "5 helppoja asioita, joita voit tehdä esteettömyyden saavuttamiseksi" </p>

March 1, 2018