Essential performance best practices for jQuery
artzstudio.com
artzstudio.com
Was I wrong?
I wouldn't start by caching selectors all over the place unless you profile and see that it's slow. Doing a lot of selecting in a `scroll` or `mousemove` handler would be a bad idea though: http://ejohn.org/blog/learning-from-twitter/
However, if you wait until the `load` event happens, the page is visible and the user can start interacting with it. If you're still messing with the HTML at that point it can be pretty confusing for the user. That's really common with pages that decide for example to AJAX back for saved settings; they can yank the defaults out from under you while you're typing! The southwest.com site does that and it drives me crazy.
None of the recommendations should be seen as absolutes, and some conflict with each other. For example, if you're using event delegation you've got to be careful in caching selectors to content that may go away.