我正在尝试实施ngAria - 已将其注入我的模块中,请使用以下html
First Name: <input role="textbox" type="text" ng-model="firstName" aria-label="First Name" required><br>
Employee: <input role="checkbox" type="checkbox" ng-model="isEmployee" arial-label="Employee" required>
我期待看到ngAria添加咏叹调所需,咏叹调检查和tabindex,但它只会增加咏叹调无效。我对ngAria的理解是错误的吗?
"<input role="textbox" type="text" ng-model="firstName" aria-label="First Name" required="" class="ng-pristine ng-untouched ng-empty ng-invalid ng-invalid-required" aria-invalid="true">"
"<input role="checkbox" type="checkbox" ng-model="isEmployee" arial-label="Employee" required="" class="ng-not-empty ng-dirty ng-valid-parse ng-valid ng-valid-required ng-touched" aria-invalid="false">"
答案 0 :(得分:0)
NgAria会自动为(某些)默认Angular指令注入ARIA属性。
这意味着例如:如果您将ng-disabled
放在元素上,它将在运行时注入aria-disabled
。
在您的情况下:
只有在输入中添加aria-required
时,NgAria才会注入ng-required
属性。 (顺便说一下:如果你在你的元素上添加required
或aria-required
并不重要。两者对屏幕阅读器都有相同的效果。所以,你的输入已经正确标记为必需的)
如果您将tabindex
指令置于默认情况下,而不是可点击元素,则仅会自动设置ng-click
属性。例如:div
或span
。
aria-invalid
被置于元素上。
有关受支持的指令和相关ARIA属性的详细概述,请查看https://docs.angularjs.org/api/ngAria