Yes, I mean Dijit. IBM & Mozilla put a lot of effort into making the
Dijit widgets accessible via ARIA.
From my perspective, the most solid parts of ARIA are anything that
emulates an existing desktop widget. I can only speak for Firefox,
because IE8 has come a long way, but in my testing I found a number of
issues. However, as long as you are in Firefox with basic widgets that
you'd see on a desktop it can always be made to work with any screen
reader. In general any screen reader will work with these basic
widgets, as they mapped well to the standard a11y APIs on each platform.
If you move onto widgets that have different semantics than your
standard desktop controls, or use ARIA landmarks, ARIA drag and drop
and ARIA live regions, then you start needing to require a very recent
screen reader, and not everything will work in all cases. For these
cases, on Windows, NVDA works the best, followed by JAWS. On Linux,
Orca works well.
FWIW, I wish others would do a little support on this list as well,
that's what this list is for in part. After all, ARIA is new and
people will run into issues. There are people on this list who have
done a lot of successful work with ARIA already.
If you want to make something speak as it's shown, the best way is to
either use CSS display (to be official you should change aria-hidden
when it's invisible, but that doesn't affect many of the screen
readers). Or, actually remove and insert the node. Either way is fine,
but if you want it to be spoken as it's shown you should but aria-
live="polite" on the container. As for speaking the button states, I
suggest using aria-pressed. That fits along best with standard toggle
buttons on OS button controls, so more screen readers will already be
accustomed to it.
Have you seen the examples on
codetalks.org? There are lots and lots
of working examples, so if you need to prove to yourself that stuff
works, go there. You can look at the markup:
http://wiki.codetalks.org/wiki/index.php/Set_of_ARIA_Test_Cases
Here is a page on how to file a bug on an ARIA implementation,
including JAWS:
http://wiki.codetalks.org/wiki/index.php/How_to_file_a_bug_on_an_ARIA_implementation
Here is a useful page full of resources:
http://wiki.codetalks.org/wiki/index.php/ARIA_Resources
- Aaron