Автоматическое воспроизведение jquery для бесконечной карусели должно быть остановлено при нажатии воспроизведения на встроенном видео
Пример проблемы здесь: http://jsfiddle.net/EtWXX/
Моя бесконечная карусель настроена на автоматическое воспроизведение. В него также встроены видео. Однако мне нужно сделать две вещи.
- Остановитесь, если видео воспроизводится.
- Остановитесь, если 'next' & 'prev' взаимодействуют с.
1 ответ
Вам просто нужно позвонить clearInterval(intervalId)
когда вещи взаимодействуют с, затем установите его снова с intervalId = window.setInterval(slide, 5000);
когда вы хотите, чтобы он снова начал скользить. если вы хотите, чтобы он приостановился при наведении курсора, вы бы сделали что-то вроде:
$('#viewport').hover(
function(){clearInterval(intervalId);},
function(){intervalId = window.setInterval(slide,5000);}
);
Я не знаю, какой код будет определять воспроизведение видео vimeo или нет, но тривиально включить / выключить прокрутку таким способом.
РЕДАКТИРОВАТЬ
Для Vimeo вы должны проверить их API, вы должны добавить ?api=1
в конце вашего Vimeo URL в iframe
и загрузите их библиотеку froogaloop, которую вы можете использовать для этого:
jQuery('iframe.vimeo').each(function(){
$f(this).addEvent('play', function(){clearInterval(intervalId);});
$f(this).addEvent('stop', function(){intervalId = window.setInterval(slide,5000);});
});
это должно остановить слайд-шоу, когда вы воспроизводите видео, и перезапустить его, когда видео останавливается, он прослушивает события из API
Что касается предыдущей и следующей, просто добавьте интервал очистки сразу после jQuery(next).click(function(event) {
а также jQuery(prev).click(function(event) {
в коде плагина, я не знаю, как вы хотите возобновить слайд-шоу, но мы уже знаем код для этого...