角色警报由chrome、firefox中的JAWS 2020.2001.70读取,但在Microsoft IE11和Edge中未读取。
同样的也适用于chrome和firefox中的mac画外音。
我们需要在文本输入中写下"显示","角色正在工作"将自动读取,因为角色=警报(无选项卡(
$(".container > input").keyup(function(){
if(event.target.value === "show"){
$(".dl").removeClass("dl_hide");
}
});
.dl_hide{
display : none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="container">
<input type="text" name="your_name" value="" />
<div class="dl dl_hide" role="alert" tabindex="0">
Role is working
</div>
</div>
首先,活动区域应该在页面加载时出现在DOM中。(未设置为显示:无。(现在也有例外,因为一些屏幕阅读器/浏览器组合确实支持动态加载活动区域。然而,正如您在IE中注意到的那样,它并没有。
其次,咏叹调现场区域只有在现场区域的内容更新时才应该大声读出。
尝试这种方法:
<div class="container">
<input type="text" name="your_name" value="" />
<div class="dl" role="alert"></div>
</div>
$(".container > input").keyup(function () {
if (event.target.value === "show") {
$("div.dl").text("Role is working");
}
});