2010-11-19 29 views
1

我想讓我的支持Ajax的表格分頁符合508(使用JAWS版本9可訪問)。我有一個表格標題單元格,其中包含執行jQuery ajax請求的鏈接,並使用回調來更新表格。我已經成功地在鏈接主體中使用「spacer」圖像,並向JAWS用戶傳遞排序信息(請注意:JAWS默認不讀取工具提示),但不會被有視力的用戶看到。然而,當JAWS用戶導航到鏈路(使用向上和向下箭頭鍵)和壓力機SPACE初始鏈接onclick事件,我有兩個問題:可訪問,符合508的Ajax分頁

  1. 沒有信息被輸送到JAWS用戶指示表內容已更新,
  2. 當內容更新時,剛剛執行的JAWS用戶的鏈接被重新讀取,但它在表更新之前重新讀取替代文本,用戶必須前進到下一個字段,然後返回到JAWS的鏈接以閱讀更新的替代文本。

來自任何有經驗實現可訪問的Ajax分頁的人的提示將不勝感激!我的表頭單元代碼如下:

<th title="Sorted column, toggle sort from Ascending to Descending" controller="xxxManagement" id="xxxName" scope="col" class="sortable sorted asc" > 
    <a href="/app/xxxManagement/listXXX?max=20&sort=name&order=desc" onclick="toggleLoadingAnimation();jQuery.ajax({type:'POST',data:{'controller': 'xxxManagement','max': '20','sort': 'name','order': 'desc'}, url:'/app/xxxManagement/listXXX',success:function(data,textStatus){jQuery('#xxxList').html(data);},error:function(XMLHttpRequest,textStatus,errorThrown){},complete:function(XMLHttpRequest,textStatus){toggleLoadingAnimation()}});return false;" title="Sorted column, toggle sort from Ascending to Descending"> 
     Name 
     <img src='/app/images/pixel.gif' alt='Sorted column, toggle sort from Ascending to Descending' /> 
    </a> 
</th> 

回答

1

不幸的是我覺得簡單的答案是你運氣不好。我經常遇到Jaws在更新內容時告訴我的問題,有時需要刷新屏幕來更新Jaws的虛擬緩衝區。 Jaws 9也是一個過時的版本,但如果您正在爲該版本的標準化部門編寫內部應用程序,則可能需要處理它。我會建議兩件事。方案一是下載最近一個月發佈的版本12。如果這可以解決您的問題,也許您可​​以證明升級的合理性?選項二是查看WAI-ARIA這應該讓你將你的表格標記爲活動區域並自動更新更新。我沒有這方面的經驗,但它可能工作。我不知道大白鯊9支持WAI-ARIA的能力如何,但下顎10似乎做得相當不錯。請參閱this blog entry以瞭解WAI-ARIA的屏幕閱讀器支持。您可以隨時使用Jaws 9進行列出的測試,以瞭解WAI-ARIA支持是什麼樣的。

+0

再次感謝與我分享。與Jaws一起工作對我來說是新事物,所以我永遠不知道我是否遇到了JAWS的限制,或者缺乏實現某些理想可訪問性功能的知識。我將下載Jaws 12並按照您的建議進行測試(Jaws 9的確是我們的客戶版本)。僅供參考 - 大白鯊9不支持WAI-ARIA。 – 2010-11-19 20:36:55

0

這可能不是針對您的具體問題,但如果你有progressive enhancement實現,我認爲這將解決這個問題。換句話說,讓頁面導航通過傳統(非Ajax)鏈接工作,然後在這些鏈接上連接ajax點擊事件。

如果使用非JS瀏覽器或屏幕閱讀器,它將簡單地導航到下一頁。如果使用普通的現代瀏覽器,它會給ajax體驗。無障礙建立在不失去Ajax體驗的情況下。

+1

嗨馬特,感謝您花時間分享您的提示。我們現在處於用戶驗收測試階段,我們的實現是由客戶需求驅動的(必須支持IE7和IE8,必須符合508,並且...必須是超級棒的ajax應用程序!),所以現在考慮太遲了漸進式增強(雖然我確實閱讀了鏈接,但有趣的是,如果在需求中未聲明非js功能,我認爲在實踐中實現起來太昂貴... js/ajax不一定是不可訪問的,但它不會讓事情變得更困難)。 – 2010-11-19 20:32:02