[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: модификация URL при работе через аякс
IPnex
Приветствую!
Такой вопрос, как изменять URL при работе с аякс?
К примеру на "вконтакте" переходы по страницам происходят посредсвом работы аякс. И при этих переходах менятются URL и можно копировать ссылки на эти страницы. А если сайт полностью работает на аякс, но при переходах между страницами URL не менятеся, то следовательно нельзя скопировать ссылку на конкретную страницу.



Спустя 1 час, 24 минуты, 8 секунд (23.05.2011 - 16:21) ApuktaChehov написал(а):
IPnex - ничего не понял. Аякс работает так же как браузер, посылает заголовки, получает ответы. Он тоже отправляет запросы по ссылкам. Так что я не понял, что сделать.

Спустя 3 минуты, 11 секунд (23.05.2011 - 16:24) Snus написал(а):
Насколько я знаю, то браузер не позволит фальсифицировать URL

Спустя 21 минута, 49 секунд (23.05.2011 - 16:46) IPnex написал(а):
ApuktaChehov
Ну например, есть сайт URL http://www.site.ru/ У него есть блок с меню. У меню ссылки вида http://www.site.ru/menu.php?id=1, http://www.site.ru/menu.php?id=2 и тд
При обычной работе с меню при нажатии например на второй пункт мы соответственно переходим на страницу http://www.site.ru/menu.php?id=2. Ссылка поменялась, нужный текст показался на странице (внешний вид страниц одинаковый, просто меняется содержимое страницы при выборе разных пунктов меню)

Другая ситуация, у нас эта страница (и сайт в целом) работает на аяксе и на странице есть div блок с id="content". И мы при выборе пункта меню через javascript узнаем нужный id (вытаскиваем из атрибута href ссылки) и через аякс запрашиваем страницу с этим id. Затем полученный текст вставляем в div блок с id="content".
Но при этом ссылка-то осталась http://www.site.ru/. И если нужно дать кому-то ссылку на конкретную страницу, то естественнно не получится, т.к. при переходах черех пункты меню ссылка остается одна и таже.

Надеюсь все понятно расписал.

Спустя 2 минуты, 33 секунды (23.05.2011 - 16:48) sharki написал(а):
IPnex
Я уже думал над этой задачей, есть 2 варианта, ЛИБО хэшами т.е #page=1&..... либо использовать HTML5, и юзать его возможности, читай.
http://htmlbook.ru/html5/history

Спустя 7 минут, 19 секунд (23.05.2011 - 16:56) IPnex написал(а):
Цитата (sharki @ 23.05.2011 - 16:48)
IPnex
ЛИБО хэшами т.е #page=1&

Т.е. нужно будет делать ссылки вида <a href="#menu.php?id=1">О компании</a> ?

Спустя 2 минуты (23.05.2011 - 16:58) sharki написал(а):
ага

И JS забирать строку и потом парсить адрес, но удобнее в PHP, с помощью parse_url()

JS функция: var url = document.location.hash; // получит #menu.php?id=1

Спустя 2 минуты, 44 секунды (23.05.2011 - 17:01) IPnex написал(а):
А ну понятно, спасибо большое sharki!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.