Приостановка автоповорота при наведении курсора (jQuery)

Я использую плагин слайдера контента, который хорош, но не имеет одной важной функции: не останавливает автоматический поворот слайдов при наведении курсора мыши.

Вот соответствующая часть из сценария:

var dotimer = function (x){
    if((opts.auto) == true) {
        if(timer != null) 
            clearInterval(timer);

        timer = setInterval(function() {
                $(opts.next).click();
                }, 3000);
    }
}

dotimer();

Полный сценарий можно просмотреть здесь

Я хочу, чтобы вращение приостанавливалось при наведении курсора и возобновлялось при наведении курсора мыши.

Заранее спасибо за вашу помощь!


person eozzy    schedule 26.04.2010    source источник


Ответы (3)


Вам нужно установить и очистить таймер в событии hover:

var stopTimer() = function () {
    if (!timer) return;
    clearInterval(timer);
    timer = false;
};
$(something).hover(
    function() { stopTimer(); },
    function() { doTimer();   }
);
person SLaks    schedule 26.04.2010

Пытаться:

$(opts.slides).hover(function() {
  clearInterval(timer);
},
function() {
  dotimer();
});
person Tim    schedule 26.04.2010

Нашел решение здесь: http://www.dlocc.com/articles/jflow-slider-auto-slider-with-pause-functionality/

Спасибо, в любом случае.

person eozzy    schedule 26.04.2010