var lastHash = "";
window.onload=function()
{
hashChangeEventListener = setInterval("hashChangeEventHandler()", 50);
}
function hashChangeEventHandler()
{
var newHash = location.hash.split('#')[1];
if(newHash != lastHash)
{
lastHash = newHash;
//Do stuff!
}
}
У меня отлично работает на всех протестированных платформах (черт побери).