Octothorpe / number-sign / hashmark имеет особое значение в URL-адресе, обычно он идентифицирует имя раздела документа. Точный термин заключается в том, что текст, следующий за хешем, является частью URL-адреса привязкой. Если вы используете Википедию, вы увидите, что на большинстве страниц есть оглавление, и вы можете переходить к разделам в документе с привязкой, например:
https://en.wikipedia.org/wiki/Alan_Turing#Early_computers_and_the_Turing_test
https://en.wikipedia.org/wiki/Alan_Turing
обозначает страницу, а Early_computers_and_the_Turing_test
является привязкой. Причина, по которой Facebook и другие приложения на основе Javascript (например, мои собственные Wood & Stones) используют якоря, заключается в том, что что они хотят делать страницы закладками (как предлагается в комментарии к этому ответу) или поддерживать кнопку «Назад» без перезагрузки всей страницы с сервера.
Чтобы поддерживать закладку и кнопку «Назад», вам необходимо изменить URL-адрес. Однако, если вы измените часть страницы (с чем-то вроде window.location = 'http://raganwald.com';
) на другой URL-адрес или без указания привязки, браузер загрузит всю страницу с URL-адреса. Попробуйте это в консоли Javascript Firebug или Safari. Загрузить http://minimal-github.gilesb.com/raganwald
. Теперь в консоли Javascript введите:
window.location = 'http://minimal-github.gilesb.com/raganwald';
Вы увидите, что страница обновляется с сервера. Теперь введите:
window.location = 'http://minimal-github.gilesb.com/raganwald#try_this';
Ага! Нет обновления страницы! Тип:
window.location = 'http://minimal-github.gilesb.com/raganwald#and_this';
По-прежнему нет обновления. Используйте кнопку «Назад», чтобы увидеть, что эти URL-адреса находятся в истории браузера. Браузер замечает, что мы находимся на той же странице, но просто меняем привязку, поэтому он не перезагружается. Благодаря такому поведению у нас может быть одно приложение Javascript, которое отображается в браузере как на одной «странице», но имеет много закладок, соответствующих кнопке «Назад». Приложение должно изменить привязку, когда пользователь входит в разные «состояния», и аналогично, если пользователь использует кнопку «Назад», закладку или ссылку для загрузки приложения с включенной привязкой, приложение должно восстановить соответствующее состояние.
Итак, у вас есть: якоря предоставляют программистам Javascript механизм для создания приложений с возможностью добавления закладок, индексации и обратной кнопки. У этого метода есть название: это одностраничный интерфейс.
p.s. У этого метода есть четвертое преимущество: загрузка содержимого страницы через AJAX с последующим его внедрением в текущую модель DOM может быть намного быстрее, чем загрузка новой страницы. Помимо увеличения скорости, под контролем программиста могут выполняться дополнительные трюки, такие как загрузка определенных частей в фоновом режиме.
p.p.s. Учитывая все это, восклицательный знак или восклицательный знак - это еще один намек для поискового робота Google на то, что одна и та же страница может быть загружена с сервера по немного другому URL-адресу. См. Сканирование Ajax. Другой способ - сделать так, чтобы каждая ссылка указывала на URL-адрес, доступный серверу, а затем использовать ненавязчивый Javascript, чтобы преобразовать его в SPI с привязкой.
Вот снова ключевая ссылка: Манифест одностраничного интерфейса
person
raganwald
schedule
16.10.2010
shebang
... en.wikipedia.org/wiki/Shebang_% 28Unix% 29 - person JYelton   schedule 09.06.2010