已更新
我正在进行一个必须符合508标准的项目。应用程序中有一个部分具有动态元素。
例如,有一个html:
<div id="dynamicDiv"></div>
<select id="selectId"></select>select的选项是从数据库的后端填充的。当用户从select中选择一个选项时,就会将一个元素填充到dynamicDiv元素中。在本例中,它是一个label,带有选项中的文本,单击后的button将从dynamicDiv中移除label和button。
当我用JAWS 16进行测试时,JAWS似乎在DOM中“迷失”了。焦点仍然放在select上,但是JAWS正在读取添加的元素的信息。通常,它开始读取添加到label中的button和dynamicDiv之间的数据。当您试图使用箭头键在select中导航时,JAWS就会开始读取,就像您正在遍历DOM一样。
所有这一切中最奇怪的一点是,select继续有蓝色的高亮和点缀的焦点寄宿者。如果您可以让JAWS读取select的内容并按enter键,那么select将返回工作状态(能够使用箭头键在select中的选项中导航),直到从选项中选择新的内容为止。然后下颚又消失了。
我试图将注意力集中在select上,但这也是行不通的。select看起来仍然有焦点,但是JAWS正在读取更新的dynamicDiv。我想的是,DOM中的JAWS索引并没有被更新。所以JAWS认为它位于同一个元素上(在本例中是select ),但实际上是指向已经添加到DOM中的新元素。
有人碰到过这个吗?有人知道解决办法吗?
发布于 2015-11-23 17:30:29
这个区域被阿里亚-实况标签包围了吗?如果是这样的话,这可能就是它“丢失”的原因,因为在更新的时候,它会去读它,但是当它真的只是读取更新的信息时,它似乎会迷路。
https://stackoverflow.com/questions/33835286
复制相似问题