Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 屏幕阅读器aria实时断言文本被中断_Javascript_Html_Accessibility_Wcag_Wcag2.0 - Fatal编程技术网

Javascript 屏幕阅读器aria实时断言文本被中断

Javascript 屏幕阅读器aria实时断言文本被中断,javascript,html,accessibility,wcag,wcag2.0,Javascript,Html,Accessibility,Wcag,Wcag2.0,$('#firstButton').focus() 这是一篇很长的文章 第一个按钮活动区域一开始可能会令人困惑。活动区域的目的是宣布页面的更改,而不是宣布页面加载信息。加载页面后,如果页面上发生了更改,例如元素中的文本或添加了新元素,则如果使用aria live属性,则可以宣布这些更改 大多数页面在加载时不会宣布任何内容。屏幕阅读器用户将听到页面正在加载,当加载完成时(屏幕阅读器中通常会有声音提示,让您知道页面是否仍在加载或是否已加载),通常会宣布页面标题,然后读取具有初始焦点的任何对象 如果

$('#firstButton').focus()

这是一篇很长的文章

第一个按钮
活动区域一开始可能会令人困惑。活动区域的目的是宣布页面的更改,而不是宣布页面加载信息。加载页面后,如果页面上发生了更改,例如元素中的文本或添加了新元素,则如果使用
aria live
属性,则可以宣布这些更改

大多数页面在加载时不会宣布任何内容。屏幕阅读器用户将听到页面正在加载,当加载完成时(屏幕阅读器中通常会有声音提示,让您知道页面是否仍在加载或是否已加载),通常会宣布页面标题,然后读取具有初始焦点的任何对象


如果你真的需要在页面加载后阅读一些东西,那么它应该有最初的焦点。但要小心,因为将焦点放在非交互元素上,例如段落(
)或非语义元素(
)可能会令人困惑。如果必须使用该选项,请确保该元素具有
tabindex=“-1”
,以便该元素不会处于正常的键盘焦点顺序。

因此,无法阻止通过获取焦点的按钮读取文本。 在很大程度上取决于屏幕阅读器/浏览器/操作系统的组合时说什么的优先级顺序,但通常情况下,关注焦点的元素对任何活动区域(包括断言区域)都具有优先级

您可以做的是使活动区域断言文本在焦点移动到按钮后显示。 它有更大的机会被不间断地宣布

在任何情况下,页面加载时存在的活动区域都不能在所有平台上可靠读取。 为了确保它能被有效地说出,请在页面完全加载完毕后将其显示在DOM中