盲人可以使用利用鼠标事件进行交互的网页吗
Can blind people use web pages that utilize MOUSE events for interactions
具体的问题是,如果我使用以下内容:
$("#mytable").on("mousedown", "input", function(event) {...});
这种无障碍访问是"友好的",还是会阻碍视障人士使用我的页面?
一般来说,在javascript&jquery?
有一种简单的方法可以测试这种交互的基本可访问性:您可以用制表符标记项目并使用空格或回车键激活它吗?
无障碍不仅仅是盲人,还有其他群体也依赖键盘,但不使用屏幕阅读器(例如行动不便的人)。无论哪种情况,看起来都可能存在两个问题:
- 表格通常不是你可以用键盘关注的元素,所以如果用户通过点击它获得信息或激活功能,它也应该可以用键盘选择
- 键盘用户很少能访问"mousedown"功能。(尽管使用屏幕阅读器的人可能可以通过模拟鼠标点击来使用它。)
假设元素不是链接或表单控件,则需要添加tabindex
(在HTML中或通过JavaScript):
<table tabindex="0">
0值将它放在DOM中的tabindex中。(http://www.w3.org/TR/wai-aria-practices/#focus_tabindex)
然后,您应该确保按键也会触发事件,类似这样的事情应该可以做到:
$("#test").mousedown(function() {
// your function
});
// also activate with enter/space
$("#test").on("keydown",
function (e) {
if (e.which === 13 || e.which === 32) {
$('#test').click();
}
}
);
(JavaScript/jQuery不是我最擅长的地方,请检查密钥码,并根据您的喜好进行改进。它应该可以让人们按下空格或输入来激活控件。)
一般来说,我会寻找一个JavaScipt库,它考虑了可访问性,并谈到了使用WAI-ARIA。JQuery和jQueryUI是比较好的两种,但测试也很有用。使用标准的HTML控件并使用JS进行增强通常是最安全的方法,最好创建一个基本的测试并在WebAim之类的列表中提问。
盲人可以使用利用鼠标事件进行交互的网页,前提是该网页还提供了其他交互方法。即使没有提供替代方法,一些盲人也可能能够使用该页面,例如,由于辅助软件将鼠标事件映射到他们可以使用的东西,如键盘事件。然而,你不应该依赖这一点。
WCAG2.0有一个技术文档"使用键盘和其他设备特定功能",其中建议mousedown
事件处理程序与keydown
处理程序配对。如何做到这一点取决于上下文。有时,您可以简单地为两个事件分配相同的处理程序。但是,您还需要考虑使用鼠标的上下文。如果用户希望将鼠标移动到某个位置,然后按下鼠标按钮,则应尝试找到一种方法,允许在看不到任何东西的情况下执行整个操作。
- 在Windows 10中自动执行例行程序(主要与浏览器交互)
- 如何防止网页加载后自动启动功能
- 如何使用Node.js最有效地解析网页
- 刷新后保留对网页的更改
- AJAX不会在文件上传后重定向到网页-POST方法
- 用于编写与我作为客户端查看的网页交互的脚本的术语(如果有的话)是什么
- firefoxxul扩展和网页之间的交互
- 如何在网页上以交互方式切换 CSS 工作表以进行测试/学习
- 需要检测网页中哪个<脚本>块与哪些其他<脚本>块交互
- Safari扩展注入了脚本/网页交互
- 盲人可以使用利用鼠标事件进行交互的网页吗
- 我的剪贴板里到底有什么?它是如何与网页交互的
- 如何使用Python与javascript网页交互
- 如何与网页内的外部网站进行交互
- 如果没有事件处理程序,网页如何知道我何时与元素交互
- 如何在JS中最好地设计(代码方面)一个高度交互的网页
- 在Safari扩展中使用javascript注入与网页进行交互
- 自动化与网页的交互'
- 通过应用程序与本地网页实时交互
- 从c++应用程序与网页交互