jQuery is so easy to use and thankfully abstracts many of the cross-browser concerns we used to labor over years ago. As with any library, however, there are a common set of bugs that tend to crop up as you start and continue to use it more and more. This session aims to help equip developers with the appropriate knowledge and tools to exterminate a subset of these common issues.
For each topic that is covered we will start with an example piece of code that contains a jQuery bug, then expose what the bug is, explain why it is happening, proceed to explore various techniques to exterminate the bug, and in some cases provide extra insight surrounding the problem.
These solutions range from simple to advanced concepts. By exterminating bugs in multiple ways it will help expose some of the newer and more advanced features of jQuery that aren't as widely known.
Some of the bugs that we will address involve dealing with synchronous and asynchronous code, uncovering some possibly confusing aspects of the $.each() method, uncovering why some animations have a mind of their own, explaining the difference between bind(), live(), delegate(), and live(), explaining why and how you might have killed event delegation, explaining the difference between commonly confused jQuery methods, problems when reusing a method as an event handler, and more.