Я использую действительно простую историю (http://code.google.com/p/reallysimplehistory/)
Затем в своем коде я делаю что-то вроде этого:
window.dhtmlHistory.create();
window.dhtmlHistory.initialize();
window.dhtmlHistory.addListener(function(hash){
// this is where you process your hash and do something special
// and totally funky
});
Это даже срабатывает при начальной загрузке страницы, если вы случайно добавили в закладки хеш-тег или еще много чего.
Довольно полезно, и абстрагируется от всех специфичных для браузера B.S. поставляется с window.location.hash
Josh