gpt4 book ai didi

accessibility - 使用 JAWS 获取关键事件

转载 作者:行者123 更新时间:2023-12-05 03:14:45 26 4
gpt4 key购买 nike

在使用 JAWS 屏幕阅读器时,每次在浏览器上按下空格键时,我都需要捕获当前时间。如果我不使用 JAWS,我可以捕获空格键,但是,一旦打开 JAWS,系统就无法捕获任何空格键。

这是我的代码:

$(document).keypress(function(event) {
var chCode = ('charCode' in event) ? event.charCode : event.keyCode;
if (chCode == 32){ //32 is keyCode for spacebar
addTime = addTime + Number(new Date()) + ",";
var x = document.getElementById("spacebar");
alert("spacebars!!!");
}
});

我想知道该怎么做才能在每次按下空格键时捕获当前时间。

有趣的是,每次按下空格键时,JAWS 都会读出“空格”,但不会在代码级别捕获该事件。

或者 - 由于 JAWS 在我按下空格键时读出“Space”,有谁知道我如何捕获 JAWS 事件?因为它在我按下空格键时识别它,所以我想知道我是否可以直接从 JAWS 捕获事件。有什么想法吗?

最佳答案

发生这种情况是因为大多数屏幕阅读器,即 JAWS,在浏览器中提供了所谓的虚拟光标。这是在网页和类似文档上快速导航所必需的。
要对此进行测试,请尝试在 JAWS 打开时按网页上的字母。例如,如果您按 b,JAWS 会说“没有按钮”,因为 b 会移动到下一个按钮(如果有)。要输入文本,您需要进入表单模式。
另一方面,空格键仅在您位于可点击元素(链接、按钮、复选框或仅附加了 onClick 事件的元素)上时才起作用,然后它会激活该元素;或在表单模式下,然后将空格键入编辑字段。
为了完成您想做的事情,您需要将网页的一部分声明为 role="application"(更多信息 here ):

When the user navigates an element assigned the role of application, assistive technologies that typically intercept standard keyboard events SHOULD switch to an application browsing mode, and pass keyboard events through to the web application.
The intent is to hint to certain assistive technologies to switch from normal browsing mode into a mode more appropriate for interacting with a web application; some user agents have a browse navigation mode where keys, such as up and down arrows, are used to browse the document, and this native behavior prevents the use of these keys by a web application.

所以,为了能够计算你的时间,只需声明一个父级 divrole="application",你的空格键将被直接传递给应用程序且未被 JAWS 拦截。

关于accessibility - 使用 JAWS 获取关键事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23051610/

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