Как сделать переходы страницы в стиле github с помощью pjax - PullRequest
5 голосов
/ 04 ноября 2011

Однажды я прочитал статью, в которой говорилось, что переход с github-страницы выполняется pjax. Я проверил проект jquery-pjax . Я думаю, что близок к ответу, это должно быть что-то, связанное с событиями pjax:start и pjax:end, но я все еще не могу заставить его работать, поэтому я пытаюсь получить некоторую помощь здесь.

$('a.pjax').pjax('#main');
$('#main').bind('pjax:start', function(){$('#main').slideUp()})
  .bind('pjax:end'), function(){$('#main').slideDown()});

Но это не имеет никакого эффекта

Ответы [ 3 ]

4 голосов
/ 05 ноября 2011

Github использует функции HTML5 для переходов страниц.Это включает в себя новый JS History API и переходы CSS3.Никаких jQuery, за исключением стандартного прослушивания событий, селекторы.Сообщение в блоге здесь со всеми соответствующими ссылками https://github.com/blog/760-the-tree-slider

1 голос
/ 15 июня 2013

Pjax: Демо , Источник [Github]
Это тот, который GitHub использовать .. ссылка

1 голос
/ 05 января 2012

Я не знаю, относится ли это вообще. Но я сам использовал Pjax, и приведенный выше код имеет синтаксическую ошибку, должна быть:

$('a.pjax').pjax('#main');
$('#main').bind('pjax:start', function(){$('#main').slideUp()})
.bind('pjax:end', function(){$('#main').slideDown()});

Редактировать: Да, извините, что не указал на это. Точно так же, как @Udo Held сказал: вам нужно убрать скобку после 'pjax: end', иначе она не будет выполнена и выполнить функцию $ ('# main'). SlideDown ()

...