Поддержка браузера с помощью AJAX без необходимости изменения хеша?

В настоящее время я использую плагин jQuery BBQ для работы кнопок навигации bowser, но у меня есть проблема в том, что если закладка сохраняется пользователем для одной из страниц, скажем...

www.mysite.com/#page1

когда пользователь возвращается через закладку, полная страница должна сначала загрузить...

www.mysite.com/

прежде чем хеш-часть URL-адреса может быть использована для обратного вызова ajax для завершения страницы.

Чтобы решить проблему, я попытался создать только "скелетную" страницу во всех URL-вызовах главной страницы, чтобы весь "внутренний" контент извлекался через ajax, но это не кажется хорошим решением.

Кто-нибудь знает какие-либо методы / плагины, которые не используют метод 'hash' для поддержки 'истории кнопок назад и т.д.?

1 ответ

Решение

Единственное решение, предотвращающее двойную загрузку страниц, - это использование API истории HTML5, который позволяет напрямую изменять URL-адрес, а не иметь дело с хешами.

Поскольку HTML5 History API является относительно новым, все браузеры поддерживают его по-разному. Вы можете использовать History.js для нормализации функциональности между браузерами.

Прочитайте эту статью, чтобы узнать больше о проблеме, которая возникает у вас с хэшами, и о том, как хэши сравниваются с API истории HTML5.

Другие вопросы по тегам