Что лучшая библиотека должна сделать хеш/историю URL в JQuery? [закрытый]

Я осматривал библиотеки JQuery для хеша URL, но не нашел ни один, что было хорошо. Существует "плагин истории", но все мы знаем, что это - багги и не гибко.

Я загружаю свои страницы в отделении. Мне будет нужен способ сделать назад/вперед наряду с хешированием URL.

mydomain.com/#home
mydomain.com/#aboutus
mydomain.com/#register

Какова лучшая библиотека, которая может обработать все это?

23
задан balupton 18 September 2010 в 10:11
поделиться

4 ответа

Недавно я просмотрел 3 разных плагина - плагин истории jquery , история и jQuery BBQ .

Все они были довольно сложными в настройке, я действительно заставил jQuery.history работать, но у него все еще были проблемы с IE7. Поэтому я перешел на BBQ, и он отлично работал во всех наших целевых браузерах (IE6, IE7, IE8, Fx3).

Поэтому я рекомендую плагин jQuery BBQ.

Изменить: вот сообщение в блоге , которое я только что написал, демонстрирует jQuery BBQ с каскадными раскрывающимися списками.

25
ответ дан 29 November 2019 в 02:52
поделиться

Мне повезло с reallysimplehistory (он же dhtmlHistory). Он не специфичен для jQuery, но работает в IE, firefox и webkit, и не требует много настроек.

0
ответ дан 29 November 2019 в 02:52
поделиться

AFAIK, все плагины истории делают одно и то же:

setInterval(function() {
   if(theHashChanged) {
      someFunction(oldHash,newHash);
   }
}, 500/*whatever*/);

В этом суть (за исключением хаков браузеров для добавления записей в историю без нажатия на ссылку и т.д.). Это всегда будет глючить, потому что это немного хак, и нет кросс-браузерного API для обработки изменений истории.

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

-4
ответ дан 29 November 2019 в 02:52
поделиться

Возможно, попробуйте этот плагин истории jQuery: https://github.com/balupton/jquery-history/ Он обеспечивает кроссбраузерную поддержку, привязку к хешам, перегрузку хешей и все остальное.

Для него также есть расширение Ajax, позволяющее легко преобразовать вашу веб-страницу в подходящее приложение Ajax: https://github.com/balupton/jquery-ajaxy/

В целом это хорошо документировано , поддерживаемый и многофункциональный. Здесь также был выигран вопрос о награде Как показывать запросы Ajax в URL?

Или, если вы хотите использовать API истории HTML5, есть: https://github.com/browserstate/history.js

0
ответ дан 29 November 2019 в 02:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: