Как работает театральный режим Facebook и меняет адрес без хеша? - PullRequest
1 голос
/ 14 июля 2011

В более ранних версиях Facebook они использовали хеш (#) в своем URL для вызовов AJAX, чтобы сохранить адресную закладку, и я понимаю, как заставить ее работать, поскольку вы не можете изменить адресную часть до хэша (#)

Но знайте, что в Facebook, когда вы нажимаете на фотографию, фотография и комментарии открываются в черном слое (театральный режим), старый контент все еще остается на заднем плане, и самое главное, он меняет полный адрес в адресная строка.

Затем вы закрываете черный слой с фото, он переходит к предыдущему содержимому, и адресная строка снова меняется на свой предыдущий полный адрес.

И все это происходит без хеша (#) в адресной строке.

Кто-нибудь знает, как это работает?

UPDATE

То же самое происходит и на github.com при просмотре файлов и папок.

Ответы [ 2 ]

1 голос
/ 14 июля 2011

Вы можете посмотреть плагин jquery:

address

, но, как вы сказали, он исправлен в IE

1 голос
/ 14 июля 2011

Благодаря чистым исходным кодам github.com, позволяющим мне узнать, как это работает

Это делается window.history.pushState

Это не работает с IE как обычно

...