Опрос против скрытого iFrame для истории Ajax - PullRequest
0 голосов
/ 24 ноября 2010

Фон

Обнаружение изменения хеша в URL и исправление кнопки «вперед / назад» - это два требования для библиотек, которые имеют дело с историей Ajax.Есть две школы мысли для реализации этих библиотек.Вы можете сделать так, чтобы программа опроса постоянно проверяла URL (у плохих браузеров нет события onHashChange).Или вы можете использовать скрытый iFrame, чтобы добавить очки в историю вашего браузера.Кто-то может подумать, что скрытый iFrame лучше, чем опрос, но скрытый iFrame не обновляет URL внешнего браузера.Поэтому, если пользователь хочет поделиться своим текущим состоянием в веб-приложении, он всегда будет делиться своим начальным состоянием.

Вопрос

Существует ли какая-либо техника для истории Ajax, которая не требует опроса, а также обновляет URL основного браузера?

Ответы [ 2 ]

0 голосов
/ 24 ноября 2010

Глядя на ваши комментарии к исходному вопросу, я бы рекомендовал использовать метод iframes для IE и опрос для других браузеров.

Проверьте Real Simple History , если вы ищетебиблиотека, которая обрабатывает это специально, и вам нужна база, которая поможет развернуть вашу собственную.

Если вы просто ищете функциональность для сохранения состояния вашей страницы в Ajax UI, dojo поддерживает это с dojo.хэш () шим.Этот метод создает событие onhashchange для браузеров, которые его не поддерживают, и управляет состоянием кнопки возврата.Он использует сочетание опроса и iframes в зависимости от браузера (iFrames используются специально в версиях IE <8). </p>

0 голосов
/ 24 ноября 2010

Как насчет комбинации двух техник? измените URL, а также используйте iframe. игнорировать hashChanged (в хороших браузерах) и просто анализировать хеш-код в dom: ready

...