我有一个实时区域,点击按钮会增加显示的计数值(类似于投票/喜欢)。屏幕阅读器要读出的信息是一个计算值,例如:" 1个人喜欢这篇文章" /"没有人喜欢这篇文章" /" 8个人喜欢这篇文章"。这些消息在客户端脚本(计数值)中计算,并在服务器脚本中定义(最终消息)。
<div class="sr-only" role="alert" aria-live="polite">
<span id="feedback-count">{{c.message}} /span>
</div>
这在Chrome中非常有效,但在Windows中使用Jaws屏幕阅读器无法读取IE中的消息。
答案 0 :(得分:0)
我尝试了一些方法,这个方法最适合我,修复了问题,屏幕阅读器文本在所有浏览器中都得到了完美的读取。
"//h3[.='Programs']/following::ul"
functionToBeCalled = function(message) {
aria_message = message;
document.getElementById('screen-reader-tag-id').innerHTML = '';
document.getElementById('screen-reader-tag-id').innerHTML += '<p class="sr-only">'+ aria_message+'</p>'
}