我想将tabindex
添加到包含文本的所有元素(包装的父项除外),以便我可以通过它们进行制表并使用屏幕阅读器进行阅读。
<div>
<table class="blue">
<tbody>
<tr>
<td><span class="">abc</span></td>
<td><span class="">def</span></td>
<td><span class="">ghi</span></td>
</tr>
<tr>
<td><span class="">jkl</span></td>
<td><span class="">lmn</span></td>
<td><span class="">pqr</span></td>
</tr>
<tr>
<td><span class="">stu</span></td>
<td><span class="">vwx</span></td>
<td><span class="">yza</span></td>
</tr>
</tbody>
</table>
</div>
我想标签只能跨越,但是为每个跨度添加tabindex是单调乏味的。这只是一个小例子。 sceanrio可能是一个元素中更深的文本,不需要只是表格格式。
使用下面的内容,无论如何都会为我取文,但不会读取它
$('.blue').text();
是否有任何解决方案可以获取所有最后一个标签并为每个标签添加tabindex attr?
这样我就可以专注并阅读。
答案 0 :(得分:2)
你完全是误导。
您不需要也不必向元素添加tabindex以使屏幕阅读器读取它。
屏幕阅读器可以在没有它的情况下阅读文本,文本不必是可聚焦的就可以阅读。添加tabindex将导致可访问性问题(暗示可聚焦元素不会导致任何操作)。
答案 1 :(得分:-1)
你可以试试这个:
$("table.blue span").attr("tabindex", "0");