Мы могли бы сделать это, изменив интервал на тайм-аут, который дает нам идентификатор, который мы можем сбросить по желанию.Затем мы можем использовать щелчок даже, чтобы сбросить этот интервал и перейти вручную, что, в свою очередь, снова запустит интервал.
Используя самый простой пример на jonraasch.com :
window.slideInterval = null;
function slideSwitch() {
var $active = $('#slideshow IMG.active');
var $next = $active.next();
$next.addClass('active');
$active.removeClass('active');
window.slideInterval = setTimeout('slideSwitch()', 5000 )
}
jQuery(function() {
window.slideInterval = setTimeout('slideSwitch()', 5000 );
});
$(el).click(function(){
// reset interval
clearTimeout(window.slideInterval);
// trigger next slide manually
slideSwitch();
});
Редактировать
На выходных у меня было время уделить этому больше внимания, и я ознакомился с лучшими практиками создания плагина jQuery.Код немного документирован, но в целом достаточно стандартен и не очень сложен, хотя имеет немало жонглирования переменными:)
Если вы используете что-либо, вам следует использовать это.
http://jsfiddle.net/sg3s/RFJMy/214/
Кстати, вы можете просто удалить функции prev и rand, если не хотите их использовать, запускать, останавливать, инициализировать и передавать, чтобы вся работа.