Head first jQuery - Benedetti, Ryan; Cranley, Ronan (Head First Series, 2011)