accessible name computation 17 subcases for HTML 看起来很复杂。如何在浏览器中的 javascript 中获取元素的可访问名称?
最佳答案
对于你的问题来说可能还早了几年。目前正在开发与文档对象模型 (DOM) 类似的可访问性对象模型 (AOM)。完成后,它将允许您从 javascript 查询可访问的名称。
请注意,您的“17 个子案例”都只是可访问名称计算规则的重述。我不知道为什么 W3C 有这个页面。例如, <input type="text"> 的第一个要点是:
- 如果控件具有 aria-label 或 aria-labelledby 属性,则将使用可访问名称和说明:计算和 API 映射中定义的算法来计算可访问名称。
- 否则,如果关联了多个标签,则使用关联的标签元素或元素可访问的名称;按 DOM 顺序连接,以空格分隔。
- 如果可访问名称仍然为空,则:使用控件的 title 属性。
第 1 点与 https://www.w3.org/TR/accname-1.1/#step2 中的步骤 2B 和 2C 相同
第 2 点与步骤 2D 相同
第 3 点与步骤 2I 相同
也许 17 个子情况比实际可访问的名称计算更容易阅读/理解?没有把握。但他们说的是同样的话。
每个浏览器都会计算可访问的名称,因此您确实需要在浏览器中使用 API 来获取可访问的名称。
关于javascript - 如何在浏览器中的 javascript 中获取元素的可访问名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76940359/