Всегда интересно было как отлавливается состояние, в понедельник вернусь осиливать :).
А вот мне кажется достойнейший пример: www.weborama.ru/#/music/Blink_182/
про fullajax
1) у него другие задачи, параметры запроса распарсить не такая уж и проблема
2) позволяет сделать то что вы даже и не догадываетесь
к примеру
— AJAX переход с прокруткой
— авто формирование и парсинг AJAX ссылок, переход по которым вызывает серию AJAX запросов в разные контейнеры
— поддержка уровней перехода (переход на более верхние уровни, затирает все признаки нижних уровней)
Вот вроде интересные вещи делаете, видно что есть чем поделится с хабраобществом. Только труды ваши бесполезными получаются, ибо преподносите вы их в неудобоваримом виде. Те кто мог бы этим воспользоваться никогда этого не сделают, потому как:
— описание в виде диалогов витиевато и не дает понимания что к чему, а так же содержит много информационного шума, и мало по делу;
— кодом не воспользоваться без обработки, его стиль лишь одному вам привычен и сложно воспринимается (основные проблемы: запись нескольких строк в одну (циклы, условные операторы), прилипающий к имени переменной оператор присвоения, отсутствие точки с запятой в конце);
— нет ссылки с рабочим примером.
немножко реверс инжиниринга на вебораме или gmail и либа у вас в кармане :)
(вообще подобный подход много где используется, но веборама с гмылом самые заметные, имхо)
эээ. примерно два года назад мы сделали и это и кроссдоменную авторизацию.
да, пришлось помучаться, но все взлетело и затикало.
переходы между страницами без перезагрузки страницы (во завернул, да?), с работающим аудиоплеером.
сквозной логин на кучу доменов (т.е. залогинившись на одном из них, и зайдя на другой обнаруживаешь, что ты уже там залогинен) и т.п.
ну может я немножко слукавил, говоря «немножко», но в принципе болшую часть времени убили на кроссбраузерность, а не на саму идею.
Вообще, описанная проблема из области Deep Linking'а (http://en.wikipedia.org/wiki/Deep_linking) — то есть указания на страницу, при этом передавая начальное состояние данной страницы.
Для пользователей jQuery есть удобное расширение — плагин jQuery Address (http://www.asual.com/jquery/address/). Он позволяет расставлять параметры хэша адресной строки примерно, как при работе с обычными GET-параметрами, но идущими после "#". Получение значений параметров также достаточно простое.
Кроме этого, удобно навесить на события обновления хэша адреса свой обработчик.
* я хочу поехать в японию летом и выбираю самый дешёвый авиабилет.
* а на следующей неделе еду в москву ночным поездом и мне нужно согласовать время отправления с ними.
Давно использую это на своём сайте. К сожалению, обычные юзеры очень редко обращают внимание на изменение URL-а и не копируют его.
Поэтому если кто хочет сделать такую штуку, то лучше всего использовать явные поля для предоставления URL-а.
Например, как в притче, на странице должно быть поле: «ссылка на эту страницу».
За реализацию спасибо, выглядит элегантно.
Вместо того чтобы возиться с аяксом и 100-килобайтными сложными потенциально глючными скриптами, сделали бы просто легкую верстку и перезагружали страницу нормальным способом. Но ведь средний разработчик на такое просто не способен, вот и придумывают извращения.
Притча о потерянном состоянии