Плагин jQuery's History (и Bookmark) может содержать ошибку? - PullRequest
0 голосов
/ 06 июля 2010

Я подозреваю в файле http://github.com/tkyk/jquery-history-plugin/blob/master/samples/ajax/ajax.js

в строке 13 и 14

            load(url);
            $.history.load(url);

в Firefox, Chrome и IE 8, я вижу, что страница загружается дважды, когда 1,Нажмите 2 или 3.

Верно ли, что строка 13 "load (url);"может быть удалено, потому что $ .history.load (url) вызовет функцию, зарегистрированную в $ .history.init (), которая уже выполняет load ()?

Может кто-нибудь, знакомый с пакетом, подтвердить это?

(Это лучшая библиотека истории и закладок Ajax, которую я нашел для jQuery. Если кто-то знает другую хорошую библиотеку, сообщите нам).

1 Ответ

2 голосов
/ 06 июля 2010

Да, вы можете удалить вызов load(url), и он будет работать, что произойдет, если init примет обратный вызов, если хеш местоположения изменится (, который он проверяет каждые 100 мс ). снова запустим этот обратный вызов.

Эта часть:

$.history.init(function(url) {
  load(url == "" ? "1" : url);
});

Эта функция запускается каждые 100 мс, , если хеш текущего местоположения (или appState в плагине) не совпадает с тем, что было ранее . Вызов load() в фактическом обработчике click является дополнением к этому, поэтому в настоящее время он выполняется мгновенно, а через 0-100 мсек снова.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...