Internet explorer JAWS可访问性问题-Internet Explorer中实时区域的多次读取

Internet explorer JAWS可访问性问题-Internet Explorer中实时区域的多次读取,internet-explorer,accessibility,jaws-screen-reader,Internet Explorer,Accessibility,Jaws Screen Reader,我们有一个具有多个相关下拉列表的模式对话框,选择值 在一个下拉列表中,动态重新填充依赖下拉列表 由于这种行为,每当重新填充任何下拉选项时,JAWS都会再次读取所有字段 例如,虚拟标记 <div role="dialog"> <div> <select id = "one"> <option value="0">A</option> <option value="1">B<

我们有一个具有多个相关下拉列表的模式对话框,选择值 在一个下拉列表中,动态重新填充依赖下拉列表

由于这种行为,每当重新填充任何下拉选项时,JAWS都会再次读取所有字段

例如,虚拟标记

<div role="dialog">
   <div>
      <select id = "one">
        <option value="0">A</option>
        <option value="1">B</option>
        <option value="2">C</option>
      </select>
   </div>

   <div aria-live="polite">
      <select id = "two">
        <!-- dynamically populated options -->
        <option value="1">BC</option>
      </select>
   </div>

   <div aria-live="polite">
      <select id = "three">
        <!-- dynamically populated options -->
         <option value="1">BD</option>
      </select>
   </div>
</div>

A.
B
C
卑诗省
屋宇署
选择下拉列表“一”中的值将填充下拉列表“二”中的选项,同样,下拉列表“三”取决于下拉列表“二”的值

Jaws在Chrome和firefox中正确读取所有字段,但是在internetexplorer11中,只要重新填充任何下拉选项,Jaws就会从一开始读取字段

其他细节 Jaws版本-15 使用角度ui模式对话框 每当对话框的dom中有任何更新时,浏览器都会从头开始读取

更新-这是plnkr-


如果需要任何进一步的详细信息,请告诉我,我们将非常感谢您的帮助。

ARIA live regions旨在读取所放置元素的可见(即不显示:无)内容的更新。您的HTML标记在IE11和JAWS中正常工作。浏览器和辅助技术之间的ARIA-live实现存在很多差异,这导致了您所看到的差异

aria live=“little”的默认行为是AT读取区域中的所有添加内容。在上面的代码中,这意味着它应该读取您填充的所有选项

Angular.js有时会在模型或范围内的某些内容发生更改时重新填充区域的整个DOM,而有些ATs会在将节点插入文档时宣布aria活动区域


我不清楚你的代码想要实现什么,你所说的JAWS在Chrome和Firefox中正确读取字段是什么意思。如果你能描述你想要的结果,我可以提供更多的指导。

显然IE在[role=“dialog”]属性上有一些问题,如果我们在更改“first drop down”的选定值时从模式对话框中删除该属性,问题就会得到解决

基本上,在更改第一个select之后,我将使用role=“dialog”查找元素并删除属性“role”。这在某种程度上解决了问题
JAWS在重新填充相关下拉列表时正确读取模式

能否显示动态填充选项的标记?@Roman,用选项标记更新了问题这里是活动区域?@Unbof更新了问题,请看一看,我会为此创建一个plnkr,并在今天发布相同的内容。我看不到您在PLNKERYAH中提到的标记。标记稍有不同,但我能够重现问题,您是否尝试通过IE 11中的jaws阅读它?