I think that "load/unload" the document is the only appropriate notion to use in situations when:
1. user is closing the current page [ap dependable op] currently associated with ap. close;
2. the user is loading [as a final step of download, cache, parse, render procedure] a New Page in the same docked browser window (called browser tab while in fact being just another instance of an independent dock-able browser window), causing the previous page to be unloaded from active memory and free the space previously taken by its content.
3. Moving back and forth the browser history, inside the same tab/docked window, should be considered as load/unload process, -moreover, this action should factually cause the page to get "loaded/unloaded" from active memory, snce it already exists in a browser cache and there is absolutely no practical reason to leave it "eat" your system resources as last generation browsers do.
This undoubtedly means that: if the user closed the page he was on (although I don't know if there is such browser providing that option), opened another page in the same window/browser tab, navigated back and forth, should all actually carry out the task, to unload/load content, while, same time triggering corresponding events. But I think that browser close should be discerned from document close which is an equivalent of page unload, but this two different actions/events have in practice, the same meaning for the page content therefore right now it is unnecessary to discern. Although browser close and /or tab close comparing to page close/unload, should have different meanings on the browser domain, wihch I believe are already differentiated.
*
But it's a completely different story when (ctrl) tabbing or alt+tabbing between browser windows containing data. This doesn't fall in navigating category. In this case: only the screen display gets redrawn, but nothing else. No events should fire nor any other action be carried out except window/tab focus with any other focus event aliases. Meaning, only the conventional (focus/blur) events should fire. Smart browsers will during this event (focus) check if any content changes have occurred on the side of source provider and update if specified or some other way required.
Generally speaking There's nothing more efficient than loading pages from browser cache. Keeping them in memory causes what f.i. firefox users are complaining the most: memory leaks.
Regards.