У меня есть страница с множеством динамически генерируемых флажков.Когда пользователи ставят эти флажки, большая часть содержимого на странице динамически изменяется через ajax.Конечные пользователи жалуются на то, что после нажатия кнопки «Отправить», а затем нажатия кнопки «Назад», чтобы что-то изменить, их выборки сдуваются, и им приходится делать это снова.
Я видел несколько сайтов (gmail, facebookи т. д.) используйте хеш-символ в URL, чтобы взломать кнопку «назад», чтобы она выполняла вызовы AJAX, а не возвращалась к предыдущему полностраничному запросу.Я хотел бы сделать это, чтобы изменить URL-адрес перед отправкой страницы, чтобы при нажатии кнопки «Назад» загружались ранее выбранные поля.
Например:
В Gmail, если я просматриваю свой почтовый ящиктогда мой URL выглядит следующим образом: https://mail.google.com/mail/?shva=1#inbox
Затем, если я нажимаю «Отправленная почта», выполняется вызов AJAX, и мой URL изменяется так: https://mail.google.com/mail/?shva=1#sent
Я действительнонравится это поведение и хочу дублировать его.Как это достигается?
Ваши ссылки на самом деле вызывают какой-либо javascript или они просто ссылаются на URL с соответствующей информацией хеш-символа?
Как вы читаете информацию о хэш-символах в javascript?
Как этот тип навигации влияет на поисковые системы?Будет ли поисковая система знать, что два URL-адреса, которые являются одинаковыми, за исключением информации после хэша, на самом деле являются разными URL-адресами и индексировать их как таковые?метод, который я должен принять во внимание?
ПРИМЕЧАНИЕ. Я использую C # с ASP.NET Web Forms и ASP.NET MVC 3.0 на случай, если это вообще имеет значение.