【发布时间】:2021-02-23 19:28:21
【问题描述】:
我有一个带有提交按钮的表单的页面。单击提交按钮后,我希望焦点转到“成功”或“失败”消息。 现在屏幕阅读器一旦按下按钮就不会离开。 它停留在“按继续按钮”上,然后我用我的箭头导航。 我希望它专注于
标签代替屏幕上的按钮并在按下 Continue 后阅读消息。
<form>
<h1> Start Password Reset> </h1>
<input placeholder="Email">
<input type="submit" name="Continue" value="Continue">
<p id="success"> Success Message Here </p>
<p id="failure"> Failure Message Here </p>
</form>
【问题讨论】:
-
您是否使用 AJAX 处理表单提交?如果是这样,只需执行
document.querySelector("#success").focus()(或document.querySelector("#failure").focus()表示失败)并在成功和失败段落中添加tabindex="-1",以便在提交成功或失败回调时将焦点移至它们。 (tabindex="-1"允许程序化焦点,而无需在页面的焦点顺序中添加任何内容,这意味着有人不能对其进行标签,但您可以使用代码对其进行焦点)
标签: html accessibility wai-aria