2014-11-24 37 views
4

我正在使用AngularJS爲Web應用程序創建分析。該應用程序需要符合508標準。AngularJS和508標準

我知道用於可訪問性的某些設備直接讀取HTML並在元素中使用alt和longDescr屬性,它們獲取網站的內容。

我看到的問題是,如果你看到頁面源(而不是生成的源),當在Angular中使用某些功能時,如ng-view和ng-include,插入頁面的模板內容將不會顯示源代碼,只在生成的源代碼中。

我的問題是,是否存在通過動態插入模板符合508標準的問題?

一般來說,AngularJS的功能與508標準的兼容程度如何?

+1

輔助技術屏幕閱讀器(JAWS,NVDA,VoiceOver等)針對活動DOM而不是原始來源;動態插入模板本身並不是一個阻擋器;但仍然需要確保模板本身是可訪問的,並且插入模板的代碼使用適當的技術來適當地通知屏幕閱讀器:屏幕閱讀器通常不會宣佈新的內容或更改,除非被告知;所以警報,菜單,對話框,錯誤消息以及有時需要現場更新都需要特殊處理。我不熟悉角度在這裏做什麼,如果有的話。 – BrendanMcK 2014-11-25 06:08:31

+0

感謝您的回答。關於輔助技術閱讀活動DOM的部分是我的問題的主要部分。 我可以補充說,至少對於HTML中的語法部分,如果您將「data-」添加到「ng- *」並更改{{data}}以便data-ng-bind,Angular可以符合508標準。 但是,如你所說,我仍然需要知道由Angular製作的DOM更新是否可以被這些輔助技術檢測到。 – pfernandom 2014-11-25 18:58:00

+1

可以檢測到這些更改,但默認情況下通常會被忽略,所以更大的問題是用戶對UI的期望行爲是什麼;對於某些用戶界面,可能需要立即閱讀,對於其他用戶,可能需要保持原樣,直到用戶在那裏瀏覽爲止 - 讀出每個變化可能過於嘈雜!查看屬於WAI-ARIA部分的[aria-live]屬性(http://www.w3.org/TR/wai-aria/states_and_properties#aria-live)屬性;這可以用來向AT發出信號,告知AT在其內容改變時應該讀取特定標籤。 – BrendanMcK 2014-11-25 21:53:51

回答

2

Angular.js can be used accessibly在實踐中,雖然它確實需要一些工作。

但是,目前形式的第508節仍然提到WCAG 1.0,但有一些細微差別。

既不是腳本非常友好,所述section 508 text爲1194.22(部分i)爲:

當頁面使用腳本語言來顯示內容,或創建界面元素,由腳本提供的信息應用可以通過輔助技術閱讀的功能性文本進行識別。

對Angular不太實用。

第508條將更新在某些階段(指定了基於JavaScript的接口應該是可訪問的),它一直在工作多年使用WCAG 2,但由於the "rulemaking" has not completed yet月,如2014年