jQuery Plugin Development in 30 Minutes: How to build jQuery plugins that are easy to maintain, update, and collaborate on
Description:
As an experienced jQuery plugin developer and the operator of a website devoted to jQuery education, I have had many opportunities to talk with other developers and understand what works and what doesn’t when it comes to learning how to build plugins. This short guide is intended to quickly get you up to speed with core concepts, which enable you to start building plugins of your own.
Experienced developers know that well-written jQuery plugins can reduce bugs, increase efficiency, improve collaboration, and save time. In jQuery Plugin Development in 30 Minutes, I'll show you how to write clean and efficient jQuery plugins that are easy to maintain and collaborate on. While jQuery Plugin Development in 30 Minutes is intended for people who already have some experience with JavaScript and jQuery, most of the concepts in the guide will not require any advanced knowledge. Topics include:
- Creating a plugin
- Prototyping
- Generate, Init, and Destroy
- Handling events
- Plugin options
- Setters and Getters
- Styling, CSS, and themes
- Callbacks
- Browser and mobile support
- File organization and versioning
- Boilerplate
I've also included bonus content, including sections on jQuery methods, utilities, selectors, and events, as well as a jQuery glossary. jQuery Plugin Development in 30 Minutes really is intended to be a short but productive read -- my intention is to avoid the fluff and filler that make up 80% of most programming books, and just get straight to the point!
The full table of contents is below:
Introduction
- About This Guide
- Why jQuery Plugins?
Section 01: Creation
- Naming
- Closures
- Plugin Function
- Summary
Section 02: Prototyping
- The Main Loop
- The get() Method
- Plugin Class
- Prototyping
- Summary
Section 03: Conventions
- Generate
- Destroy
- Init
- $var
- Private Functions
- This & That
- $.proxy()
- Summary
Section 04: Events
- Note on .hover()
- e.currentTarget vs e.target
- Disabling Event Bubbling
- Naming Events
- Naming Functions
- Summary
Section 05: Options
- Default Options
- Plugin Options
- Additional Options
- Data Options
- Advanced Options Setter
- Summary
Section 06: Setters and Getters
- Setters
- Getters
- Methods
- The Routine
- Auto-Creation
- Summary
Section 07: CSS and Themes
- Naming
- CSS
- Setting Themes
- Multiple Themes
- Summary
Section 08: Effects
- States
- Controller
- Summary
Section 09: Callbacks
- Setup
- Ajax
- Naming
- Summary
Section 10: Browser and Mobile Support
- Browser Support
- Extending $.support
- Mobile Support
- Summary
Section 11: File Organization
- Simple
- With Grunt
- Git
- Versioning
- Summary
Section 12: Boilerplate
Section 13: Conclusion
Bonus Content
Section 14: jQuery Methods
Section 15: jQuery Utilities
Section 16: jQuery Selectors
Section 17: jQuery Events
Glossary