Как создать # якорные ссылки в стиле W3C или Gmail?

Если вы используете Gmail, вы увидите URL-адреса в адресной строке, например:
https://mail.google.com/mail/#inbox
https://mail.google.com/mail/#starred
Если вы перейдете по одному из этих URL, он сразу перейдет в соответствующее представление.

Аналогичный пример есть на http://validator.w3.org, где привязки #validate_by_uri, #validate_by_upload и #validate_by_input каждый автоматический -фокусируйте разные вкладки.

Как это делается? Использует ли страница Javascript для определения привязки, а затем переключает представление за вас? Как предотвратить прокрутку страницы до позиции привязки?


person DisgruntledGoat    schedule 08.05.2009    source источник
comment
См. stackoverflow.com/questions/568719/   -  person JPot    schedule 08.05.2009


Ответы (2)


На странице используется JavaScript для оценки свойства «hash» объекта window.location.

Попробуйте, отключив JavaScript. По крайней мере, со страницей валидатора это дает неудивительный результат.

person Tomalak    schedule 08.05.2009

YUI включает менеджер истории, который реализует это за вас. Изучение исходного кода должно помочь вам понять, как оно работает.

person Quentin    schedule 08.05.2009