Using JavaScript [the most complete reference] - Reynolds, Mark C. (Que Corp., 1996)