Синхронизировать два видео в html5 - PullRequest
0 голосов
/ 17 января 2019

Я пытаюсь воспроизвести два видео в синхронизации в html5. Вот мой подход.

<html>
   <head>
       <script>
           window.onload = function(){
               var v1 = document.getElementById('v1');
               v1.addEventListener("play", function() {
               document.getElementById('v2').play();
           });

           v1.addEventListener("pause", function() {
               document.getElementById('v2').pause();
           });

           v1.addEventListener("seeking", function() {
               document.getElementById('v2').currentTime = v1.currentTime;
           });

           v1.addEventListener("seeked", function() {
                document.getElementById('v2').currentTime = v1.currentTime;
           });
       </script>
   </head>
   <body>
       <video id="v1" controls=""> 
           <source src="big-buck-bunny_trailer.webm" type="video/webm">
       </video>
       <video id="v2" controls=""> 
           <source src="big-buck-bunny_trailer.webm" type="video/webm">
       </video>
   </body>
</html>

В приведенном выше коде есть 2 видеоэлемента (v1 и v2). Основное видео (v1) контролирует (запуск / остановка / изменение положения) второе (v2) видео. Два видео будут синхронизированы при управлении первым (v1). Но если я добавлю прослушиватель событий для «ищущих» и «ищущих» ко второму (v2) видео (аналогично v1), то каждый слушатель заявил, что вызывает другого слушателя, и вся страница зависает.

Вот рабочая jsFiddle . Видео big-buck-bunny_trailer.webm можно найти по этой ссылке.

Как это исправить?

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