приостанавливать воспроизведение видео с YouTube при воспроизведении другого?

#html #mootools #youtube #youtube-api

#HTML #mootools #YouTube #youtube-api

Вопрос:

У меня будет большое количество видео с YouTube, активных на одной веб-странице, предположительно с использованием кода для встраивания с YouTube. (обычный и / или iFrame)

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

Есть ли способ глобально управлять всеми проигрывателями таким образом? Может быть, с помощью MooTools?

Комментарии:

1. code.google.com/apis/ajax/playground / … и включите js api — все это есть в документах. вы можете создать оболочку вокруг проигрывателей с собственными событиями mootools, которые могут отслеживать клики на проигрывателе, но я не могу заставить его получать события от встроенного проигрывателя — только динамически встроенные. опять же, я пробовал всего 3 минуты. удачи

2. вы уже разобрались с этим?

Ответ №1:

Вы можете сделать это с помощью YouTube iFrame API

По сути, вам просто нужно настроить экземпляр YT.Player для каждого видео и настроить событие onStateChange, которое останавливает другой проигрыватель (ы) при запуске данного видео.

например

 player1 = new YT.Player('player1', {
    events: {
      'onStateChange': function(e) { 
          if(e.data == YT.PlayerState.PLAYING) player2.stopVideo(); }
    }
});
  

Если у вас много проигрывателей, настройка цикла не должна быть слишком сложной. демо для 2 плееров доступно по адресу http://torontoprogrammer.ca/demos/multiyoutube /

Комментарии:

1. Привет! Я пытаюсь применить это, но ни в одном из руководств не упоминается о том, как настроить YT.Player, и я пытаюсь использовать примеры на страницах и не сработало. Извините, если это звучит глупо, я новичок в YTAPI