Привет, ребята, я автор History.js , который, как сказал SnippetSpace в своем ответе, работает с HTML5 History API с необязательным отступлением для хэшей для старых браузеров , API истории HTML5 позволяет напрямую изменять URL, поэтому больше не нужно хэшировать! Ура!
Список текущих плагинов back / forward вы можете посмотреть здесь:
https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-browser-Polyfills
Поскольку HTML5 History API является правильным решением проблемы back / forward / hash / hashbang, это действительно путь по сравнению со старыми решениями hashchange. Проблемы с хешами включают в себя: двойная загрузка при доступе к хешированному URL, разные URL, обмен хешированными ссылками с js-отключенными пользователями не работает.
Существует еще один плагин, поддерживающий API истории HTML5, который является адресом jQuery , однако он не поддерживает такие вещи, как replaceState, и я не уверен в его фактической межбраузерной поддержке API истории HTML5 , Но, глядя на это список проблем Я говорю, что его поддержка не так хороша.