如何让屏幕阅读器正确读取双/三位数?

时间:2016-04-18 20:16:29

标签: html accessibility screen-readers

我正在为我的应用程序编写一些辅助功能代码。问题是当我在div中打印一个数字(例如21)时,屏幕阅读器会读取:

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

屏幕阅读器以下列方式读取div:“我有两个 cookie”,反对“我有 二十一 饼干“。

如何修改屏幕阅读器的div以正确的方式获取html内容?是否有任何解决方案?

我试过parseInt();相同的结果

1 个答案:

答案 0 :(得分:1)

您可以使用aria-label来帮助屏幕阅读器:

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

但是你必须注意,如果你使用盲文显示器(或任何非文字到语言的辅助技术),这可能适用于大数字(例如123456789):

  

我有一亿二千三百五十六万七千八百九十九个饼干

在我看来,你的屏幕阅读器有一个糟糕的读取数字实现(或者是一些配置选项?),你应该忽略这个问题,因为它没有实现正确的解释数字的方式。