Accessibility Object Model

很久以前介紹 AMP 的時候,有提到標準內的 HTML attribute,都是有其意義和用途,而當然 WAI-ARIA 的那堆aria-*屬性也是,不過以前那堆東西的介面在 web 開發端是碰不到的,不過前陣子在看 Chrome Platform Status 的時候,發現到了一個新的標準草稿叫做 Accessibility Object Model,中文可以叫做親和力物件模型吧,還很早期不過 Firefox 有一些基本實做,預設關閉,掛在他們的 Accessiblity API 下面。

這個標準目前規劃四個階段,目前有內容的只有前兩個,分別要做的事情是:

  1. Accessible Property,建立存取親和力相關屬性的標準界面,包括了rolearia-*,目前的草案不是直接把這些屬性放在 ElementNode 下,而是在 ElementNode 新增一個accessibleNode
  2. Accessible Action,建立和親和力相關的事件,擴充accessibleNode並且讓它會接收到這些親和力相關事件;
  3. Virtual Accessibility Node,讓開發者可以產生虛擬的accessibleNode,然後這些虛擬的 node 也有前兩個階段的能力,所以可以預期像是用 canvas 畫的介面也可以生出介面讓數位輔具可以溝通;
  4. Computed Accessibility Tree,提供 Accessibility Tree 的介面,目前,Accessibility Tree 也還是網頁開發者碰不到的。

目前這份草稿還在 WICG,不過已經開始有些實做了,除了 Firefox 之外 Chrome 也有,我看作者是 Mozilla、Google、Apple 的人都有,之後應該會慢慢發展成統一的數位輔具介面吧。