gpt4 book ai didi

javascript - 如何停止 508 Jaws aria 警报队列

转载 作者:行者123 更新时间:2023-11-28 03:59:07 25 4
gpt4 key购买 nike

我当前的代码库使用以下函数来创建警报,以通知盲人用户发生了某些事情,例如“鲍勃成功分配到蓝队。”

var create508Message = function (message, type) {
var $messageElement,
templateOptions = {
message: message
};

// create the $messageElement
switch (type){
case 'alert':
templateOptions.isAlert = true;
$messageElement = $(HBS['common/accessibilityUtil'](templateOptions));
break;
case 'status':
templateOptions.isStatus = true;
$messageElement = $(HBS['common/accessibilityUtil'](templateOptions));
break;
default:
return;
}

// trigger the message
$('body').append($messageElement);
// clean up automatically after 5 secs
setTimeout(function (){
$messageElement.remove();
}, 5000);

},

大多数可重用组件都会让盲人用户知道当前状态。我遇到了一些问题,例如,刷新表,读取页数,然后应用过滤器,页码发生变化,因为过滤列表中的项目数发生了变化。这会导致 Jaws 向盲人用户读取许多冲突状态,因为它会读取整个警报队列。

我希望有一种方法可以阻止它读取队列,例如:

killAriaLive: function () {
$('div[aria-live]').map( function () {
$(this).removeAttr('aria-live');
$(this).removeAttr('role');
$(this).attr('hidden', 'true');
$(this).attr('aria-hidden', 'true');
});
},

但这也不起作用,它仍然读取整个消息队列。

最佳答案

您可以尝试使用 aria-live="assertive"(请参阅 https://developer.paciellogroup.com/blog/2014/03/screen-reader-support-aria-live-regions/ )和空格创建/更新元素(不过我还没有尝试过),但是,您可以开始抑制用户合法的言论需要听到。

关于javascript - 如何停止 508 Jaws aria 警报队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47295134/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com