Сначала я думал, что хеш-хак обязателен, однако, судя по последним обновлениям на фейсбуке, я думаю иначе.
Оригинальный хеш-хак (я не уверен, что это правильный термин) заключается в том, что, изменив location.hash, можно сохранить состояние в URL-адресе без обновления страницы. Это широко используется приложениями Google и Facebook, а в последнее время и #NewTwitter. Однако сегодня я заметил, что у Facebook больше нет этого «#», если вы используете «современный» браузер, такой как Chrome или Firefox. Я дважды проверил, что они не перезагружаются, используя инструменты разработчика и firebug соответственно.
С минимальным поиском в stackoverflow наиболее близким к решению является использование Flash, однако я отключил Flash, и facebook.com по-прежнему работает как шарм. Судя по охвату chrome 8 dev и firefox 4 beta, мне интересно, что это может быть связано с API-интерфейсами эпохи HTML5, но код в Facebook не в моих силах отладить, чтобы узнать, что они сделали.
Поскольку это первый вопрос, который я здесь задаю, мне интересно, возможно, кто-то из вас уже решил эту проблему.
Спасибо, парни.
P.S. Не работает в IE8, не проверял бета-версию IE9.