Проблема с видео: пользователь коснулся экрана до начала игры - PullRequest
0 голосов
/ 10 января 2020

Привет, этот вопрос для всех, кто может показать мне, как решить эту проблему пользователя. У меня есть сценарий, который воспроизводит видео с возможностью пользователя приостановить и возобновить на ощупь. Это было достаточно легко сделать и работает отлично. В определенный момент сценарий приостанавливает видео для пользователя на установленное время, чтобы у пользователя было время прочитать информацию на экране. Цель состоит в том, чтобы они могли возобновить воспроизведение видео после прочтения информации. Если пользователь ждет достаточно долго, сенсор возобновить работает нормально. Но, поскольку некоторые пользователи читают быстрее, чем другие, очевидно, что мне нужно обнаруживать касание даже тогда, когда сценарий приостанавливал видео - это та часть, с которой мне нужна помощь. В настоящее время, если сценарий приостановил воспроизведение видео, и пользователь коснулся экрана до истечения установленного времени для паузы, появится кнопка воспроизведения, но нажатие на нее для воспроизведения не возобновит выполнение сценария, пока не истечет это время. Я предполагаю, что мне нужен слушатель внутри функции, которую скрипт использовал для приостановки видео. Я не совсем уверен, лучший способ справиться с этим. Вот фрагмент моего подхода на данный момент:

var myVideo = document.getElementById("myVideo");

function playPause() {
  var el = document.getElementById("playButton");
  if (myVideo.paused) {
    myVideo.play();
    el.className ="";
  } else {

    myVideo.pause();
    el.className = "playButton";
  }
}

myVideo.addEventListener("click", playPause, false);


var pause42 = function(){
    if(this.currentTime >= 42 && !myVideo.paused) {
        this.pause();

        // remove the event listener after you paused the playback
        this.removeEventListener("timeupdate",pause42);
    }
};
myVideo.addEventListener("timeupdate", pause42);

Любая помощь приветствуется!

1 Ответ

0 голосов
/ 11 января 2020

К вашему сведению проблема решена. Размещение ответа здесь, если это поможет другим.

var pause42 = function(){
    if(this.currentTime >= 15 && !myVideo.paused) {
      this.currentTime = 42;
        this.pause();

        // remove the event listener after you paused the playback
        this.removeEventListener("timeupdate",pause42);
    }
};
myVideo.addEventListener("timeupdate", pause42);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...