История Jquery / Hashchange - кнопка «Назад» - отправка формы - PullRequest
1 голос
/ 23 февраля 2012

Так что я использую плагин истории Бен Алмана для управления функциональностью кнопки «Назад» в моем приложении js / ajax:

Подробнее о плагине читайте здесь: JQuery Hashchange

Он отлично работает на всех моих ссылках 'a', которые содержат href, но он не создает хеш при нажатии кнопки ввода.Как мне добавить эту функциональность?У меня есть много ajax-форм, которые обрабатываются с помощью кнопок, и мне нужно убедиться, что хеш-код также создан для этого события.Спасибо за вашу помощь.

1 Ответ

2 голосов
/ 23 февраля 2012

Из документации

// Manually trigger the event handler.
jQuery(window).hashchange();

Так что вам понадобится что-то вроде

$('input#mybutton').click(function(){
    $(window).hashchange()

    // or directly changing the hash will trigger it too

    location.hash = 'somehash';        
}

Большинство плагинов истории, на которые я смотрел, работают только по таймеру, поэтому каждые примерно 50 миллисекунд они проверяют, совпадает ли хэш с тем, что было раньше. Если это не так, они запускают это событие. Поэтому, когда вы меняете location.hash напрямую, он распознает его и запускает событие. Или так теория идет ...

...