Вы можете использовать HTML5 pushState API для достижения этой цели.Однако, только самые новые браузеры поддерживают его, и IE даже не поддерживает его в IE9.Не было никакого способа сделать это заранее.Однако существует соглашение, согласно которому вы должны использовать location.hash, чтобы указать страницу, состояние которой было изменено с помощью запроса ajax.Для получения дополнительной информации о том, как использовать URL-хэши, чтобы указать состояние на вашей странице, вы можете взглянуть на this .
Есть библиотека, History.js , который можно использовать для перехода в pushState.Его API очень близок к API pushState, но он прозрачно предоставит запасной вариант хеш-кода, если браузер не поддерживает pushState.