(Nathan) Shedroff pointed to the continuing lack of integration between design skills and programming knowledge as a reason why most sites were still functioning primarily as brochures.
— David Womack, AIGA Director of New Media
- Enhance usability, but never rely on JavaScript!
- Usability:
- ease/intuitiveness of use.
- Accessibility:
- anyone can access the site.
Note: These definitions are far from complete, but that’s how we’ll be using the terms for the purposes of this section.
Use Javascript to enhance the usability features for the majority of users, without negatively affecting the accessibility for the minority of users. You can almost always fall back on a plain HTML or server-side solution for the benefit JavaScript provides.
- Offer a non-JavaScript alternative.
Contrary to popular belief, this does not mean use
noscript
elements on everthing. Most of the time, you can get away without usingnoscript
at all. If you need to use it, consider it a last resort. - Avoid “cute” tricks.
Avoid scrolling text or changing text because changes in the page content often make screen readers start over. If your content is constantly changing, it will be inaccessible to a blind or low-vision user.
Avoid flashing or constantly moving graphics because they can be distracting to users with attention deficits. Even worse, large flashing areas can cause some people to go into epileptic seizures.
- Don’t hijack the user’s browser
- Never use unrequested popups!
- Don’t resize or move browser windows.
- If you use popup windows, alert the user first.
- Don’t disable the resize or scrollbar features of popups.
- Consider needs for a variety of disabilities