Как вы можете обнаружить window.location.hash
onchange, например, я мог бы сделать это:
if(window.location.hash.hasChanged())
{
// ajax stuff
}
else
{
// nothing, no hash has been changed (without any window reload)
}
Если я изменю хеш, например редактирует и изменяет хеш, нажимая ввод после редактирования ничего не происходит, только при перезагрузке окна обнаружит изменение в хэше.