WCAG 2.0 A级和AJAX生成的内容

时间:2013-05-31 15:52:04

标签: ajax accessibility

我很难找到一个明确的答案,如果它以某种方式使用AJAX,那么网站是否可以至少通过WCAG 2.0 A级。

适用于example from WCAG2.0

  

“我可以使用Javascript / Ajax,Flash,PDF,Silverlight和其他技术来满足WCAG 2.0吗?   WCAG 2.0旨在应用于广泛的Web技术。“

这并不能说“是/否”。一些文档表明,一个站点必须完全禁用JavaScript(在这种情况下明显的答案是 no ),但我的印象是这是旧信息,并且不再使用JavaBcript绝对障碍(如果这是错误请纠正我!)。

也许这是因为它过于宽泛而无法给出“是”,所以让我给出一个具体(简化但基本相同)的情况。

1)如果我的网站在页面加载后立即使用AJAX生成数据列表(比方说,用户列表),我是否可以期望至少通过A级(甚至可能更高级别?)简化举例说明:

<h1> Stuff loads here on page load </h1>
<div id="thisIsWhereContentGoes">
</div>
<script type="text/javascript">
    var url = 'http://yourfavoritedatasource.url';
    var request = $.ajax({
        url: url,
        type: "post",
        data: 'text'
    });
    request.done(function (response, textStatus, jqXHR){
        jQuery('#thisIsWhereContentGoes').html(response);
    });
</script>

我的猜测是没关系。

2)再往前走一点,说我有一些控件(比如上一页/下一页滚动列表页面或更新内容,简单地说这些只是锚标签),我是否也希望这通过在A / AA / AAA?稍微修改上面的代码:

<a href="javascript:doRequest()"> Next </a>
<script type="text/javascript">
    doRequest();
    function doRequest()
    {
        var url = 'http://yourfavoritedatasource.url';
        var request = $.ajax({
            url: url,
            type: "post",
            data: 'text'
        });
        request.done(function (response, textStatus, jqXHR){
            jQuery('div').html(response);
        });
    }
</script>

我希望这也没关系。

我希望我只是迂腐,这一切都还好。据我所知,这似乎与WebAim's WCAG checklist

没有任何冲突

1 个答案:

答案 0 :(得分:6)

对于您的第一个问题,并且继续使用WebAIM作为一个很好的资源,看起来网站不再需要Javascript,至少根据http://webaim.org/discussion/mail_thread?thread=3870

  

共识似乎是网站不必使用   只要满足许多条件中的一个,JavaScript就会关闭   例如用户代理可以轻松且廉价地使用   支持JavaScript。

至于使用AJAX,只要解决了可访问性的所有方面,它似乎完全没问题,即

  1. 应用程序必须提醒用户已发生更改
  2. 允许直接访问新内容
  3. 允许继续使用Web应用程序
  4. 来自http://webaim.org/techniques/ajax/

    WebAIM有一篇很好的后续文章,展示了在http://webaim.org/techniques/aria/实现这些目标的方法。我特别关注动态内容更新部分,该部分强调使用WAI-ARIA 实时区域