Как мога да накарам екранен четец да чете правилно двуцифрено/трицифрено число?

Пиша някакъв код за достъпност в моето приложение. Проблемът е, че когато имам число (напр.: 21), отпечатано в div, за да може екранният четец да прочете:

<div id="screenReaderBox" aria-show=true tabindex=0> I have 21 cookies</div>

Екранният четец чете div по следния начин: „Имам две по едно бисквитки“ за разлика от „Имам двадесет и една бисквитки“.

Как мога да променя div за екранния четец, за да вземе html съдържанието по правилния начин? Ще има ли някакво заобиколно решение?

Опитах parseInt(); същия резултат


person Kode_12    schedule 18.04.2016    source източник
comment
Това изглежда като нещо, което екранният четец трябва да направи/поправи. Това нормално поведение за всички екранни четци ли е?   -  person Pekka    schedule 18.04.2016
comment
Всеки екранен четец е различен в синтаксиса, който може да улови. Като цяло са добри в дешифрирането на HTML съдържанието, но не съм сигурен дали може да чете числа по правилния начин, аз съм доста нов в работата с екранни четци   -  person Kode_12    schedule 18.04.2016
comment
Ако не могат да направят това, тогава те са безполезни за повечето съдържание в мрежата - трудно е да си представим, че това е най-съвременното...   -  person Pekka    schedule 18.04.2016
comment
Свързани/интересни: stackoverflow.com/questions/21832888/ дори може да е добър дубликат.   -  person Pekka    schedule 18.04.2016


Отговори (1)


Можете да използвате aria-label, за да помогнете на екранния четец:

<div id="screenReaderBox" aria-show=true tabindex=0>
       I have <span aria-label="twenty one">21</span> cookies</div>

Но трябва да отбележите, че ако използвате брайлов дисплей (или друга помощна технология, която не е текст към говор), това може да бъде контрапродуктивно с големи числа (напр. 123456789):

Имам сто двадесет и три милиона четиристотин петдесет и шест хиляди седемстотин осемдесет и девет бисквитки

Според мен вашият екранен четец има лоша реализация на четене на числа (или е някаква опция за конфигурация?) и трябва да игнорирате този проблем, тъй като не прилага правилния начин за интерпретиране на числа.

person Adam    schedule 19.04.2016
comment
Проблемът е с VoiceOver, той работи добре с Jaws и други екранни четци на трети страни - person Kode_12; 21.04.2016