点击 EditText 时,Talkback 应先说标签名称,然后说编辑框

Talkback should say label name first and then editbox when click on EditText

有没有什么办法可以让用户点击输入类型的文本框时,先读出标签名称,再编辑文本?我试过 aria-label 和 aria-labelledby 但都在编辑框之后说标签名称。

举个例子:

<label for="edittext" id="label" class="translatable input-label">Name</label>
<input type="text" class="translatable-pholder field-marker" aria-label="label" placeholder="Please fill" name="edittextfield" id="edittext"/ >

当前行为: 单击输入字段时显示编辑文本、名称(标签文本)、请填写、双击等

预期行为: 单击输入字段时,它应该显示名称,编辑文本,请填写,双击以...等等

不要试图强制屏幕 reader 应该如何宣布事情。只需确保您的代码在语义上是正确的,然后让 Talkback、VoiceOver、JAWS 和 NVDA 决定元素(编辑框)的角色是应该在标签之前还是之后宣布。

对讲用户会习惯它宣布事情的方式,所以如果你改变它,它会令人困惑。

你的代码很好。您有一个带有 for 属性的 <label>,它指向 <input>.