jQuery Grid插件插入以下HTML:
<td role="gridcell" style="" aria-describedby="list_createdBy">Sam</td>
'aria-describedby'属性是什么意思?
答案 0 :(得分:22)
aria specification中对此进行了描述。它给出了一个元素的id,它提供了一些用户可能需要的当前元素的附加信息。
答案 1 :(得分:4)
以下是如何使用aria-describedby属性的示例。当您拥有包含该元素信息的文本时,可以使用它。 Aria-describedby必须与描述它的文本的id相同。
First name: <input aria-describedby="name" type="text">
<em id="name">Your first name must be correct.</em>
答案 2 :(得分:1)
乍一看,我会说aria-describedby
在这里可能会被忽略,因为它是在<td>
上定义的。大多数浏览器和屏幕阅读器将aria-describedby
信息设置在非交互式(可聚焦)的元素上时。
但是由于role="gridcell"
覆盖了<td>
的语义,因此特定示例稍微复杂一些,因此,如果提供的示例遵循ARIA specification for gridcell,则该示例有效。这是一个自定义组件。
通常来说,属性aria-describedby
为屏幕阅读器提供了额外的信息,该信息将随元素的内容一起发布(不是唯一的,也是最常见的用例)。 / p>
例如,屏幕阅读器将宣布"Logout"
而不是"Logout, John Doe"
:
Logged-in as <span id="user">John Doe</span>.
<a aria-describedby="user" href="/logout">Logout</a>
或带有工具提示的示例(提示:此处缺少Javascript部分):
<button type="button" aria-describedby="my-tooltip">Snipping Tool</button>
<div hidden id="my-tooltip" role="tooltip">
It can take still screenshots of an open window,
rectangular areas, a free-form area,
or the entire screen.
</div>
或者带有表单元素的示例,另一个常见用例:
<form ...>
<label for="my-name">Full name</label>
<input aria-describedby="my-name-desc" id="my-name" type="text"/>
<p id="my-name-desc">
Please tell us your full name.
</p>
</form>
当用户聚焦输入字段时,上面的示例将立即宣布<label>
和附加描述(由aria-describedby
定义)。对于屏幕阅读器用户来说,不仅消除了阅读周围环境以能够理解预期输入内容的必要,而且消除了表单控件以外的所有其他元素,而对于<form>
内部而言,则更是如此。然后阅读本页面的其余部分是一种不同的体验。因为键盘事件可以与屏幕阅读器或窗体控件交互,但几乎不能同时与两者交互。更不用说屏幕阅读器提供了许多有用的键盘快捷键,例如,按“ H”会跳到下一个标题,但显然<input>
字段不突出时,则不会。然后,将“ H”输入到<input>
中。
aria-hidden
或aria-expanded
。但前提是必须正确实施和测试!a
或button
上实现,以及如果隐藏了引用的元素(display:none
),其位置(是否引用了内部元素?)或具有{{ 1}}或tabindex="-1"
(例如role
)等。请确保测试所有屏幕阅读器role="none"
。因此,将其添加到不可聚焦的元素没有任何意义。发件人:ADG aria-describedby
进行搜索(这是用户喜欢浏览网站以快速找到所需内容的常见方式)。发件人:ADG Ctrl+F
的唯一情况是将其他信息附加到交互式元素(例如,将可见信息与表单控件相关联)。发件人:ADG aria-describedby
(在表单控件上)和aria-describedby
(在SPAN上)组合使用以解决表单控件错误。发件人:W3.org 答案 3 :(得分:0)
基本上,
aria-scribedby 属性用于通过使用 id 引用列表(一个 id 引用列表包含一个或多个唯一的 HTML 标记 ID)将描述性信息附加到一个或多个 HTML 标签).
aria-scribedby 属性与 aria-labelledby 属性非常相似(一个描述 HTML 标签本质的标签),但是 < strong>aria-writtenby 属性提供了有关用户可能需要的 HTML 标记的更多信息。
属性aria-describedby 和aria-labelledby 主要对使用辅助技术(如屏幕阅读器)的用户有用。
供参考: