Нужно некоторое объяснение об history.js от Бенджамина

В настоящее время я сталкиваюсь с проблемой изменения URL-адреса ajax.

Допустим, у меня есть вызов ajax, когда пользователь нажимает на div, и div расширяется, а ajax получает данные из db, но URL-адрес не меняется.

Затем я нашел API истории html5 на веб-сайте Firefox. Внизу страницы порекомендуйте history.js, чтобы решить проблемы с кроссбраузерностью.

Но затем я нашел jquery-history.js и jquery-ajaxy , О боже, почему так много версий?

Любое предложение, которое я должен использовать? Я хочу, чтобы все мои вызовы ajax

  • обеспечивает изменение URL
  • кнопка назад/следующий браузер
  • Использование API HTML5
  • Плевать на старый браузер
  • Плевать на IE
  • Это действительно не полная перезагрузка страницы, а не просто подделка.

И я использую jquery.


person vzhen    schedule 24.01.2013    source источник
comment
Пожалуйста, мне нужен ответ, чтобы узнать это срочно!!   -  person vzhen    schedule 25.01.2013
comment
вы хотите изменить хэш или полный URL-адрес? для полных изменений URL для современных браузеров я предлагаю просто использовать сам window.history, так как это не так сложно. Я пытался использовать history.js, но это усложняло задачу, к тому же оно не поддерживалось активно. Я бы просто заблокировал браузеры, которые не поддерживают его, через Modernizr. developer.mozilla.org/en-US/docs/DOM/   -  person Jonathan Ong    schedule 25.01.2013
comment
@JonathanOng Я не хочу использовать изменения хэша, поскольку моя цель - современные браузеры. Да, я нашел window.history на [сайте mozilla] (developer.mozilla. org/en-US/docs/DOM/), прокрутите до самого низа. Рекомендуется использовать history.js для преодоления кроссбраузерности. И да, я хочу, чтобы он работал в кроссбраузерном режиме.   -  person vzhen    schedule 25.01.2013
comment
проблем с кросс-совместимостью очень мало. они перечислены на вики-странице history.js и на странице mdn.   -  person Jonathan Ong    schedule 26.01.2013
comment
Хорошо, тогда я просто использую window.history. Спасибо   -  person vzhen    schedule 26.01.2013
comment
Да. Единственные проблемы, которые я думаю, это замена состояния и названия   -  person Jonathan Ong    schedule 26.01.2013


Ответы (1)


Если вы заботитесь об URL-адресах и клиентах noscript, просто создайте сайт без AJAX и улучшите его с помощью jquery-pjax.

Если вам все равно, просто используйте хэши.

person Sean Hogan    schedule 25.01.2013
comment
Меня не волнуют клиенты noscript, что означает, что мой сайт всегда требует запуска js. Я тоже нашел pjax, но это похоже на фальшивую перезагрузку страницы? Я прав? Я новичок в этом. - person vzhen; 25.01.2013