Just try using the back button...
All it takes is setInterval() and window.location.hash to effectively disable the back button. This, of course, is not something I would advocate, but it's an interesting idea nonetheless. If you remember the '90s, you're probably familiar with the technique of using the unload event handler to set document.location back to the same site, which would prevent you from leaving the site unless you mashed the back button quickly to double-back before the JavaScript kicked in. This is a similar concept, equally irritating for a user, but it more effectively stops them from leaving. Of course, tabbed browsing makes this less of a big deal. :)
Read more in my post about this.