Ajax навигация без #!

Я заметил, что сайты, как http://hypem.com который является полным сайтом ajax, теперь удалось выбросить их #! AJAX URL, но поддерживал полный сайт ajax. Как это возможно?

4 ответов


вы можете сделать это с помощью истории.pushState, только в приличных браузерах, хотя ;)

https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history

вот плагин jQuery с резервным вариантом для старых браузеров для хэшированного URL: http://plugins.jquery.com/project/history-js


некоторые современные браузеры поддерживают history.pushState().

однако, если вы хотите поддерживать старые браузеры, которые все еще популярны, вы должны использовать резервный хэш.


просто включите ваш

<script type="text/javascript" src="https://raw.github.com/binarymind/jquery-navigate/master/navigate.js" ></script>

и

<script type="text/javascript"
$(document).ready(function() {
    $.navigate.init();
});
</script>

после включения в jquery (1.7+) в <head> и плагин будет ajax-автоматически перемещаться по вашему сайту.

для любой дополнительной настройки, doc или ответов вы можете перейти на github https://github.com/binarymind/jquery-navigate

надеюсь, что это помогает.

Бастьен


HTML5 имеет новый API истории. Демо доступно по этому url. http://html5demos.com/history/

https://github.com/browserstate/history.js имеет очень хорошую поддержку для этого. Тоже история.js подключается с помощью jquery,mootools и т. д. и поддерживает браузеры HTML4.