如何强制mac屏幕阅读器自动读取div中的标题文本?

时间:2017-04-05 19:34:55

标签: javascript angularjs accessibility wai-aria

所以我有一个SPA angular 1.5应用程序,当用户导航到新页面时,有时页面没有任何自动聚焦的输入,例如,它只是一个祝贺页面,说用户注册成功。通过

我已经能够提出一个稍微有点讨厌的解决方案

$('。registration-confirmation')。attr(“tabIndex”,0).focus();

所以屏幕阅读器会自动读出注册确认div中的文本,但是我还必须阻止焦点中的蓝色轮廓

.registration-confirmation {     &amp ;:focus {         大纲:0; //删除焦点上的webkit注入大纲     } }

有更简单的方法吗?也许是咏叹调属性?

1 个答案:

答案 0 :(得分:2)

是的,停止这样做 - 完全没有良好的可访问性,特别是因为你现在因为弄乱了焦点指示器而使我感到困惑。 ARIA角色是处理此问题的正确方法:

  • 如果您尝试报告错误,则应该ARIA role="alert",这将立即被屏幕阅读器宣布并具有侵入性,因此不应大量使用。
  • 要获得成功报告或其他进展,您可以使用ARIA role="status";但是,仍然不要滥用它。如果用户通过后续步骤跳转到成功的注册屏幕,例如,将其应用于除了简单的“祝贺”之外的任何其他内容。不合适。

我建议查看ARIA最佳实践文档以了解各种示例用途。