Автоматическое воспроизведение jquery для бесконечной карусели должно быть остановлено при нажатии воспроизведения на встроенном видео - PullRequest
0 голосов
/ 28 марта 2012

Пример проблемы здесь: http://jsfiddle.net/EtWXX/

Моя бесконечная карусель установлена ​​на автоматическое воспроизведение.В него также встроены видео.Однако мне нужно, чтобы он сделал две вещи.

  1. Останов, если воспроизводится видео.
  2. Останов, если взаимодействуют 'next' & 'prev'.

1 Ответ

0 голосов
/ 28 марта 2012

Вам просто нужно позвонить clearInterval(intervalId), когда с вещами взаимодействуют, а затем установить его снова с intervalId = window.setInterval(slide, 5000);, когда вы хотите, чтобы он снова начал скользить.если вы хотите, чтобы он приостановился при наведении курсора, вы сделали бы что-то вроде:

$('#viewport').hover(
     function(){clearInterval(intervalId);},
     function(){intervalId = window.setInterval(slide,5000);}
);

Я не знаю, какой будет код для обнаружения воспроизведения видео vimeo или нет, но тривиально повернуть прокруткувкл / выкл таким образом.

РЕДАКТИРОВАТЬ

Для vimeo вы должны проверить их API , вы должны добавить ?api=1 в концеURL вашего vimeo в 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

, как для prev & next, просто добавьте интервал очистки сразу после jQuery(next).click(function(event) { и jQuery(prev).click(function(event) { в коде плагина, я не знаюкак бы вы хотели возобновить слайд-шоу, но мы уже знаем код для этого ...

...