Любой способ изменить URL-адрес заголовка без перезагрузки?

Возможный дубликат:
Измените URL без перезагрузки страницы
Обновление адресной строки с новым URL без хеша или перезагрузка страницы

мой сайт полностью основан на запросах Ajax, и простая навигация внутри сайта выполняется только с одной страницы. Это означает, что когда пользователи нажимают на пункты меню, он не загружает другую страницу, а загружает содержимое внутри элемента HTML. Но когда пользователь хочет связать страницу со своим другом, она всегда будет такой же, потому что http://mysite.com/mymainpage.php всегда будет одинаковым, независимо от того, что делает ajax. Как изменить заголовок пользователя? Например, когда они нажимают на «игры», может ли jquery / js / php / html изменить текущую адресную строку URL-адреса в браузере? так что это станет http://mysite.com/mymainpage.php?games=true . Затем пользователь может просто скопировать URL-адрес сайтов из адресной строки, и это приведет к правильному разделу загрузки ajax.

Вы можете использовать хеши:

(Вот что делает gmail: https://mail.google.com/mail/#inbox , https://mail.google.com/mail/#sent )

Вы можете прочитать хэш, используя

window.location.hash /* gives "#games" */ 

или

 window.location.hash.substring(1) /* gives "games" */ 

И вы можете изменить его, используя

 window.location.hash="#games" 

или

 window.location.hash="games" 

(кажется, это работает, но лучше использовать первый вариант)

Затем каждый раз, когда пользователь нажимает на ссылку, меняет хэш и загружает новую страницу, как сейчас.

И когда пользователь входит на вашу страницу, проверьте, есть ли хэш в URL-адресе и загружает эту страницу.

Вы также можете добавить слушателя событий hashchange. См. https://developer.mozilla.org/en-US/docs/Mozilla_event_reference/hashchange

Редактировать:

Нет, у вас не может быть двух хэшей ( http://mysite.com/mymainpage.php#games#fashion )

Поэтому, если пользователь перейдет на http://mysite.com/mymainpage.php?games=true , вы должны перенаправить его на http://mysite.com/mymainpage.php#games .

И тогда вы можете изменить его на http://mysite.com/mymainpage.php#fashion без перезагрузки.