我试图编写PrimeFaces分页器以更符合WCAG规则。
原始页面链接(1 2 3 4 5)不是链接,而<span>
是普通页码。我用''包装了这个数字,所以他们可以集中精力和标题来解释这个链接的用途。 Renderer工作正常,但在使用它之后,更改页面(AJAX请求)页面链接呈现为旧式。
为什么会这样,以及如何解决它?
我的渲染给出:
<span class="ui-paginator-pages">
<span class="ui-paginator-page ui-state-default ui-state-active ui-corner-all">
<a class="ui-paginator-page ui-state-default ui-state-active ui-corner-all" tabindex="10000" title="Link to page nr: 1">1</a>
</span>
<span class="ui-paginator-page ui-state-default ui-corner-all">
<a class="ui-paginator-page ui-state-default ui-corner-all" tabindex="10001" title="Link to page nr: 2">2</a>
</span>
</span>
更改页面结果后是
<span class="ui-paginator-pages">
<span class="ui-paginator-page ui-state-default ui-corner-all" tabindex="0">1</span>
<span class="ui-paginator-page ui-state-default ui-corner-all ui-state-active" tabindex="0">2</span>
</span>
所以你可以看到,更新后的结构就像普通的PrimeFaces一样。锚点消失了,标签索引又回到了0
答案 0 :(得分:0)
这种奇怪行为的原因是AJAX请求之后的渲染页面是由PrimeFaces中定义的JavaScript代码完成的。这意味着在这种情况下覆盖默认渲染器必须在Java和JavaScript中完成。