Кажется, что нет никакого способа отложить переход слайдов, пока не завершится onBefore.В качестве обходного пути я смог сделать то, что мне было нужно, с помощью следующего, по сути, описав, что произойдет до перехода следующего слайда в onAfter текущего слайда.
/ * Вручную опишите анимацию для первого* /
$('#feature .featureStory:first').children("a").delay(4500).animate({marginTop:'100'}, 500);
/ * Передайте вызов цикла 'after' и 'skipInitializationCallbacks' * /
$('#feature').cycle({
fx: 'scrollLeft',
easing: "easeOutExpo",
speed: 1000,
timeout: 6000,
after: onAfter,
skipInitializationCallbacks: true
});
/ * Сделайте все свои анимации для следующего слайда в ononAfter текущего слайда * /
function onAfter(curr, next, opts, ff) {
$(next).children(".featureStory").animate({left:'560px'}, 500, function(){
$(this).children("a").animate({marginTop:'0'}, 500);
$(this).children("a").delay(3500).animate({marginTop:'100'}, 500);
$(next).children(".featureStory").delay(4500).animate({ left : '960px' }, 500);
});
}
Теперь я уверен, что это действительно довольно запутанно без полного контекста, но он должен дать вам представление о том, как оживить вещи перед переходом слайда, используяonAfter предыдущего слайда и некоторые задержки, чтобы заставить вещи выполняться в соответствующее время.