[Mailman-Developers] ids, javascript, and Forms Acessibility

emf i at mindlace.net
Thu Jun 29 20:09:01 CEST 2006


Laura Carlson wrote:


> I would caution against using implicit labels.

I think your advice is correct. Here is the conundrum that had me using 
implicit labels in the first place:

a.) All mailman page-elements need to be embeddable into other pages; 
this means that I can't collide with unknown id's elsewhere on the page. 
Not too much of a problem; I can have a Mm- prefix to denote mailman ids.

b.) Many form elements will repeat. One example is a user looking at the 
options for >1 list at a time. Also, a.) means I can't know how many of 
"me" (where I'm a form-chunk) a site administrator has imbedded into the 
page.

Of course, "talking it out" has presented a potential solution; let me 
know if it seems off.

I'm thinking of using Kid to generate pseudo-random numbers for ids. 
This works great, except when someone wants to use an id selector in CSS 
or getElementById() in JavaScript.

If I do this, I'll have to use class attributes (which happily can 
contain many values) to disambiguate form elements for JavaScript, and 
JavaScript will have to add/remove class attributes to change display 
for CSS. This is fine save that View Source becomes more opaque for 
someone who just knows CSS and HTML.

> - Keep the number of accesskeys to a minimum.

The only accesskeys I want to provide would be for speeding moderation.
I'm filing the rest of your advice in the wiki, so that I may keep it in 
mind.

> TABINDEX
> 
> having a sensible natural order to start 
> with, meets WCAG requirements for HTML documents.

I think this is a good idea, but I'm not going to control the global 
order of the pages the controls sit in, which is probably an argument 
for forgoing tabindex all together.

> If the tabindex attribute is not assigned to all fields, JAWS first 
> moves through the items with a tabindex assigned, then moves through 
> the other form fields and links in the order they appear on the page.

This is interesting. I have some "global" controls I was going to have 
sit "on top" of the content, and float it right. Now it sounds like I 
should put the global controls after the content, and use absolute 
positioning to put them on the right. Constrains the page-flow a bit 
more than I would like, but it is probably worth it.

On the other hand, the first form element in the global control set is 
"turn global controls on/off" so perhaps that won't be that much of a 
bother.

~ethan


More information about the Mailman-Developers mailing list