Я использую плагин jQuery Cycle для создания текстового «скремблера»: div «cycler» загружается с одним текстовым предложением, которое не меняется.Затем при нажатии кнопки текст должен (а) быстро переключаться между всеми другими текстовыми строками и (б) автоматически останавливаться через 1 секунду на другой (случайной) текстовой строке.Повторное нажатие на кнопку должно повторить эффект, каждый раз останавливаясь на другом фрагменте текста.
Вот мой код.Я избегаю autostop
и autostopcount
, так как считаю, что «остановка» в терминах Cycle разрушает случай слайд-шоу и не позволяет легко перезапустить.Я думаю, что я просто хочу приостановить и возобновить слайд-шоу
// Configure cycle slideshow
$('#cycler').cycle({
fx: 'none',
speed: '1',
timeout: '10',
random:1,
}).cycle('pause'); // Pause the slideshow immediately
Я могу настроить фиктивную ссылку для ручной приостановки / возобновления слайд-шоу на каждом клике без проблем:
// Toggle slideshow when clicking button
$('#cycler-switch').click(function(){
$('#cycler').cycle('toggle');
return false;
});
Нотак как я хочу автоматически приостановить слайд-шоу, через 1 секунду после нажатия кнопки, я изменил приведенный выше код на следующий:
// Play then Pause
$('#cycler-switch').click(function(){
$('#cycler').cycle('toggle').delay(1000).cycle('toggle');
return false;
});
К сожалению, это приводит к тому, что слайд-шоу даже не начинает воспроизводитьсянажмите.
Есть идеи?Должен ли я использовать setTimeout вместо .delay () по какой-то причине?Спасибо.