В старых браузерах вы можете , а не изменить URL-адрес в адресной строке, не покидая страницы. Но вы можете изменить хэш-часть URL, не покидая страницу. То есть вы можете изменить www.example.com
на www.example.com#new_text
с помощью JavaScript window.location.hash = "new_text"
; все после #
можно изменить.
Однако в HTML5 появился новый API истории, который позволяет изменять часть URL-адреса после домена. Таким образом, вы все равно не можете изменить www.example.com
на www.BankOfAmerica.com
(по соображениям безопасности), но вы можете изменить www.example.com/foo
на www.example.com/bar
.
history.pushState("object or string representing the state of the page", "new title", "newURL");
Проверьте Когда можно использовать ... , чтобы увидеть, какие браузеры поддерживают управление историей сеансов HTML5 и поддерживают новый метод pushState
.
Кроме того, есть библиотека JavaScript, которая нормализует API истории в разных браузерах, изменяет URL-адрес в новых браузерах и использует часть хэша для старых браузеров. См. history.js .