A collection of resources for Javascript developers who want to write modern, accessible, portal-safe JavaScript.
Best Practices
- Fluid's DHTML Developer Checklist: keyboard accessibility, ARIA, name-spacing, and other techniques
- Namespacing your JavaScript
by Dustin Diaz: article on how to use closures to define your own private namespace.
Books
- Pro Javascript Techniques
by John Resig: The best source for reliable, unobtrustive JavaScript programming techniques, from the guy who wrote jQuery. - JavaScript: The Definitive Guide
by David Flanagan: The only reliable JavaScript reference book available. Period. - Eloquent JavaScript
by Marijn Haverbeke: JavaScript overview, very broad tutorial from beginner to advanced [e-book]
News Blogs
- eJohn
, John Resig's JavaScript blog. Filled with tons of techniques, advice, and news. - Ajaxian
: All AJAX news, all the time [blog]
Cool Techniques
- Lazy Function Definition Pattern
: redefine your functions on the fly, great for init blocks [blog article] - A Plugin Development Pattern
: how to create a well-encapsulated jQuery plugin - JavaScript Closures FAQ
: everything you ever wanted to know about closures in JavaScript - Five Ajax Anti-Patterns
: Things to avoid when using client-side Ajax - Seven JavaScript Techniques You Should Be Using Today
by Dustin Diaz: a general overview of branching (nice use of try/catch), redefining functions, flags, bridges, event delegation (jQuery gives you this for free), encapsulation and closure, and creativity.
Accessible Javascript
- jQuery Accessibility Board
[google group] - Key-navigable custom DHTML widgets
: Advice on how to make your interfaces keyboard accessible. - Mozilla Developer Centre's ARIA Tutorial
: An overview of the W3C's Accessible Rich Internet Applications specs. - Fluid's DHTML Developer Checklist: keyboard accessibility, ARIA, name-spacing [Fluid document]
jQuery
- jQuery Site
:: get the latest jQuery here, plus documentation [web site] - jQuery UI Site
:: get the latest jQuery UI here [web site] - jQuery Group
:: questions, answers and buzz [google group] - jQuery UI Board
[google group] - jQuery Accessibility Board
:: a working group for now [google group]