Aria Live Region在Angular 2 ngIf验证中不断重复
我有:Aria Live Region在Angular 2 ngIf验证中不断重复,angular,accessibility,wai-aria,wai,Angular,Accessibility,Wai Aria,Wai,我有: {{“FYPVERROR”|翻译} 问题是,当错误在字段验证时动态显示时,错误将被不间断地读取,而不是仅读取一次 如何做到这一点?我试着用aria live=“little”和aria live=“little”分配div role='region',但似乎不起作用。我知道原因,但还没有解决办法 我怀疑Angular在每个验证周期中至少要做以下三件事中的一件: 从DOM中删除元素并再次添加 使元素不可见并再次可见 清除元素的文本并再次填充它 使aria live区域可见、在DOM
{{“FYPVERROR”|翻译}
问题是,当错误在字段验证时动态显示时,错误将被不间断地读取,而不是仅读取一次
如何做到这一点?我试着用aria live=“little”和aria live=“little”分配div role='region',但似乎不起作用。我知道原因,但还没有解决办法 我怀疑Angular在每个验证周期中至少要做以下三件事中的一件:
- 从DOM中删除元素并再次添加
- 使元素不可见并再次可见
- 清除元素的文本并再次填充它
- 如何验证我的推理是否正确/Angular真正做了什么
- 如果我正确地猜到Angular做了什么,我们如何防止它在不应该的情况下如此频繁地更新元素
我还没有足够的经验来回答这两个问题。如果我有任何消息,我会更新这个答案。我对原因有一个想法,但还没有解决办法 我怀疑Angular在每个验证周期中至少要做以下三件事中的一件:
- 从DOM中删除元素并再次添加
- 使元素不可见并再次可见
- 清除元素的文本并再次填充它
- 如何验证我的推理是否正确/Angular真正做了什么
- 如果我正确地猜到Angular做了什么,我们如何防止它在不应该的情况下如此频繁地更新元素
我还没有足够的经验来回答这两个问题。如果我有任何消息,我会更新这个答案。我也有类似的问题。我尝试在不同的元素上实现
aria-live
和ngIf
,并为我工作
就你而言。。下面的代码可能会起作用
<div id="signInIdError" class="inline-validation critical"
*ngIf="Condition"> <p aria-live="polite"> Some Text </p>
</div>
一些文本
我也有类似的问题。我尝试在不同的元素上实现aria-live
和ngIf
,并为我工作
就你而言。。下面的代码可能会起作用
<div id="signInIdError" class="inline-validation critical"
*ngIf="Condition"> <p aria-live="polite"> Some Text </p>
</div>
一些文本
您的*ngIf
可以简化为!signInId.valid&(signInId.touch | | | | isSubmitted)
我想改变了这一点,谢谢哪个浏览器?哪个屏幕阅读器?你的意思是说即使你什么都不做也要重复,还是说只有在你按键或做某事时才重复?你有一个我们可以测试的页面吗?所有浏览器,Jaws,只要有一个内联验证就可以重复测试。不幸的是,我们无法提供页面,只能提供上面的片段。您的*ngIf
可以简化为!signInId.valid&(signInId.touch | | | | isSubmitted)
我想改变了这一点,谢谢哪个浏览器?哪个屏幕阅读器?你的意思是说即使你什么都不做也要重复,还是说只有在你按键或做某事时才重复?你有一个我们可以测试的页面吗?所有浏览器,Jaws,只要有一个内联验证就可以重复测试。不幸的是,我们无法提供页面,只能提供上面的片段。我认为你是对的,这很愚蠢--认为这将像添加live region一样简单,我认为你是对的,这很愚蠢--认为这将像添加live region一样简单,