NVDA正确读取。 JAWS仅读取链接1,链接2(内容为链接1,链接2),但不读取其为列表
list-style-type: none;
html:
<ul role="list" class="content-links">
<sly data-sly-list.link="${model.links}">
<li role="listitem">
<a href="${link.href @ context='html'}" aria-label="${link.label}" rel="${link.rel}"
tms-dblclick="${link.tracking.tmsDblClick}" data-pid="${link.tracking.vadm.pin}" data-pid-action="${link.track.vadm.pinAction}">
${link.label}
</a>
</li>
</sly>
</ul>
答案 0 :(得分:4)
您的代码是正确的(@shannon指出的,您指定的多余角色除外)。不幸的是,JAWS就是这样工作的。当您 tab 到列表中包含的链接时,将读取链接文本,并且不读取链接包含在列表中的事实。但是,如果您使用JAWS中的向上/向下箭头键导航DOM,则在导航到链接时,您会在听到链接文本之前 听到“三项列表”。当您向下滑动列表时,您会听到“列表结束”的声音。本地JAWS用户已经习惯了(并不是说它提供了正确的用户体验。)
答案 1 :(得分:1)
链接文本应自行提供足够的信息,以使用户知道单击链接后会发生什么。 JAWS用户可以发现该链接是相关列表的一部分。不用担心,JAWS不会在用户浏览时提及它在列表中,因为这不是预期的行为。