2011-01-26 1 views
1

Для текущего проекта мне нужно вызвать событие Start/Stop jCarousel Plugin.Начало/остановка jCarousel с помощью внешних элементов управления/событий

carousel.stopAuto(); 
carousel.startAuto(); 

Я не настолько зависим от JavaScript, чтобы решить проблему самостоятельно. Краткое описание того, что я пытаюсь сделать:

Карусель - фантастический слайдер продукта и работает уже, как я ожидал. Но дело в том, что описание продукта должно быть доступно в виде всплывающей подсказки. Поэтому я должен остановить карусель, если всплывающая подсказка показана и перезапустить ее после закрытия всплывающей подсказки. FYI: tooltip Plugin - Cluetip. У кого-нибудь есть предложения для меня?

ответ

5

Найдено решение. Используйте следующую функцию как обратный вызов init для вашей настройки карусели.

function initCarousel (carousel) { 

    jQuery('#cluetip').live('mouseover mouseout', function(event) {  

     // Disable default action 
     event.preventDefault(); 

     // Stop carousel at mouseover 
     if (event.type == 'mouseover') { 
      carousel.stopAuto(); 
     }; 

     // Restart carousel at mouseout 
     if (event.type == 'mouseout') { 
      carousel.startAuto() 
     }; 
    }); 

}; 
+1

Это, кажется, сломать ротатор для меня. Если пользователь вращается вокруг ротатора в середине вращения, ротатор останавливается и никогда не перезапускается. – SomethingOn

0

Попробуйте ввести код. Он отлично работает для меня :)

Ex:

function mycarousel_initCallback(carousel) 
{ 
    carousel.clip.hover(function() { 
     carousel.stopAuto(); 
    }, function() { 
     carousel.startAuto(); 
    }); 
}; 

$(document).ready(function() { 
     $('#mycarousel').jcarousel({ 
      initCallback: mycarousel_initCallback 
     }); 
});