Цикл jQuery не возобновляется
У меня есть плагин цикла jquery, и меня попросили приостановить его при наведении курсора мыши. К сожалению, у меня есть прозрачное изображение, нависающее над всем слайд-шоу (это ссылка - щелкните в любом месте слайд-шоу, и вы переходите в другое место), поэтому я настроил следующий код:
jQuery("#holder").mouseenter(
function(){
jQuery("ul.cycle").cycle("pause");
}
).mouseleave(
function(){
jQuery("ul.cycle").cycle("resume");
}
);
Хотя это работает, если я нахожусь на короткое время, если я нахожусь на время, превышающее период ожидания, указанный в конструкторе, система не перезапускается.
Я просмотрел ТАК и наткнулся на этот пост:
Причина, по которой возникла эта проблема, заключалась в том, что следующая итерация, в которой предполагался переход, была установлена до завершения предыдущего перехода. В некоторых случаях следующий переход был запущен до того, как завершился предыдущий, в начале этого нового перехода выполняется проверка, когда уже происходит другая анимация - если это так, функция просто вернется и остановится (без настройки следующей итерации). После завершения текущей анимации слайд-шоу было остановлено, поскольку не было запланировано следующего перехода.
Как получить цикл для перезапуска таймера для текущего слайда после того, как я использовал "пауза"?
1 ответ
Я использовал исправление, предоставленное @WTK на github: https://github.com/WTK/cycle