是否可以访问window.confirm()?

ska*_*v85 10 javascript accessibility

本机浏览器模式是window.confirm,,window.alertwindow.prompt可访问,还是实现自定义更好?

mwi*_*son 5

关于这方面的信息并不多,但我相信答案是肯定的(在大多数情况下)。以前的屏幕阅读器似乎不支持警报/窗口对话框,但在当今世界,屏幕阅读器已经开始支持这些。

“虽然 JavaScript 弹出式警告框曾经被可访问性专家劝阻,但现代屏幕阅读器和浏览器为基本的 JavaScript 警告框提供了出色的支持。”

http://accessibility.psu.edu/scripts/alertboxes/#basic

https://www.w3.org/TR/2018/WD-wai-aria-practices-1.2-20180719/examples/dialog-modal/alertdialog.html

通读 w3 文档,似乎更喜欢自己制作并指定适当的aria属性


VFD*_*Dan 5

更新:阅读此答案的底部。根据这个答案,大多数屏幕阅读器都可以访问它们,但 JAWS 却不能访问,JAWS(截至2017 年 12 月的这篇文章)拥有 46% 的市场份额。因此,46% 使用屏幕阅读器的人使用的屏幕阅读器不支持window.confirm,因此最好制作一个具有相应属性的自定义对话框aria-*



编辑:根据 Travis J. 的评论,github 问题显示这是一个 Chrome 错误,已修复。但是,如果您想保留对旧版本 Chrome 的支持,那么您可以制作一个自定义对话框,或者如果您想添加 CSS、制作更多按钮等,则只需制作一个自定义对话框。