GWT-508兼容 - 如何设置HTML标签

时间:2014-04-01 16:09:41

标签: java html gwt celltable section508

我正在使我的GWT页面符合508,我需要在我的cellTable中添加一些关于排序按钮的附加信息,供屏幕阅读器使用。基本上我需要知道如何从cellTable设置Label HTML标签。

我知道如何使用setTitle()setAlt()方法,但我似乎无法找到为按钮设置Label的简单方法。我理解屏幕阅读器可以选择查看标题标签,但这不是我想要做的。

我似乎无法找到有这个问题的其他人,这怎么没有出现呢?

1 个答案:

答案 0 :(得分:1)

实际上代码中有一个TODO:https://gwt.googlesource.com/gwt/+/2.6.0/user/src/com/google/gwt/user/cellview/client/DefaultHeaderOrFooterBuilder.java

// TODO: Figure out aria-label and translation of label text

并且似乎没有任何黑客/钩子可以添加它。

所以唯一的解决办法似乎是对GWT进行分叉/补丁(如果可能的话,可以在上游提供补丁)。

顺便说一句,排序图标不是按钮,只是指标。整个表标题会响应点击,因此必须将aria-label添加到<th>元素。

(实际上,似乎有一种解决方法:在表DOM中查找相应的<th>元素,并使用aria-label setAriaLabelProperty()添加Roles.getButtonRole().属性;但是固定GWT会不那么脆弱,从长远来看会好得多,对每个人都有好处)