我应该用JavaScript更新aria- *属性吗?

时间:2018-03-09 19:55:45

标签: javascript html css wai-aria

我们说我有以下HTML代码:

<!DOCTYPE html>
<html>
<head>
<style type="text/css">
p {
    display:none;
}
input:focus + p {
    display:block;
}
</style>
</head>
<body>
<input />
<p aria-hidden="true">This field should not exceed 200 characters.</p>
</body>
</html>

当我将鼠标光标放入input字段时,会出现该段落。但是,尽管可见,但段落仍具有属性aria-hidden="true"

就网络辅助功能而言,我是否应该引入JavaScript代码,明确切换aria-hiddentrue之间的false,具体取决于我的CSS规则是显示还是隐藏段落标记?

我试图了解如何使用这些aria属性,以及它们是否意味着需要JavaScript开发人员添加其他代码以反映的方式改变HTML标记我的CSS描述的行为。

1 个答案:

答案 0 :(得分:1)

您的特定示例有点奇怪,但总的来说,是的,javascript应该用于更改aria属性的值。就像你可以使用JS来改变任何元素属性的值。

如果您有一个自定义复选框,例如<span role='checkbox' aria-checked='false'>(*),那么当选中该复选框时,您需要JS将aria-checked的值从FALSE更改为TRUE(反之亦然) )。

(*)如果你有一个自定义复选框,你将会有其他几个未在此处显示的属性,例如tabindex,鼠标和键盘处理程序等。