2011-08-30 20 views
11

我正在研究一個需要符合section 508的asp.net網站。我很困惑,好像我應該使用JavaScript或根本不使用JavaScript。正在使用jQuery 508兼容?

我可以使用jQuery的slideUp()/slideDown()來顯示/隱藏節嗎?我可以使用jQuery UI的datepicker和模式對話框嗎?

+1

[508網站在一個非常廣泛的總結](http://www.section508.gov/index.cfm?fuseAction=stdsSum#web) - 例如不是訴諸法庭的 - 是「屏幕閱讀器需要能夠工作」。 – 2011-08-30 20:37:45

+0

此標題應改爲更具體。類似於:「正在使用jQuery UI控件和顯示/隱藏方法508兼容」 – Aaron

回答

10

總之是的。一般來說,jQuery UI團隊非常瞭解可訪問性問題,並在大多數(如果不是全部)小部件上使用ARIA(http://www.w3.org/WAI/intro/aria)。

話雖這麼說,但是508兼容和「可訪問」是不同的東西。有各種各樣的標準,「508」合規性是最不嚴格的。

現在99%的頁面使用動態JavaScript控件,並且具有不同程度的可訪問性。大多數問題發生在人們推出自己的控件時,而不是像jQuery UI那樣使用良好的控件庫。

適用的規則是:

(升)當頁面使用腳本語言來顯示內容,或以 創建界面元素,由腳本 提供的信息應的功能文本一致,可以通過輔助 技術可閱讀

jQuery的對話框控件,例如,使用對話的內容網頁上的標記,所以它是輔助技術(AT)進行訪問。 AT是否正確地解釋內容並不一定是你關心的問題,至少在508方面是否合規。這是因爲,有各種類型的AT與各種操作系統組合,瀏覽器等

在顯示和隱藏內容的情況下,在技術上一旦它被示出隱藏的內容是由AT可解釋。這裏的問題是AT如何知道DOM何時發生變化。這取決於AT。在這裏,您可以動態地更新ARIA狀態通知AT,但AT不一定會尊重和/或實現ARIA標準。

5

有點遲到了,但這個鏈接裏來了谷歌這樣想我會增加一些想法。這個問題有很多需要考慮的。

SSB Bart小組對jQuery Ui控件的狀態做了很好的總結。

https://www.ssbbartgroup.com/blog/2013/07/03/jquery-ui-accessibility-analysis/

然而,由於這個職位我見過的改變正在例如在標籤控件製作。當我對jQuery UI等任何主要站點進行快速測試時,甚至自稱爲「完全可訪問」的bootstrap/foundation,我通常都會發現問題。

當可訪問我通常使用下面的一般方法測試..

  1. 運行的自動化測試,如http://wave.webaim.org/toolbar/http://squizlabs.github.io/HTML_CodeSniffer/
  2. 測試,一切都是鍵盤操作,並具有焦點指示
  3. 實際運行對着基線比較屏幕閱讀器像大白鯊或語音如http://whatsock.com/例子
  4. 測試控件使用鍵盤使用普遍接受的準則:http://access.aol.com/dhtml-style-guide-working-group/

這樣做你可以看到每個jQuery UI控件失敗的位置。它並不可怕,但它們有一些漏洞和幾乎所有的主要框架。

關於幻燈片和向下滑動,這本身並不重要。重要的是,如果您使用的按鈕是鍵盤可訪問的,並且您使用了正確的aria標籤,如aria-hidden等。請參閱http://www.w3.org/TR/wai-aria/states_and_properties以指示隱藏的內容。