#javascript #sequence
Вопрос:
Для видеоплеера существует 3 действия: play
, pause
и continue
. Для continue
действия оно определяется как play
после бытия pause
.
Если у меня уже есть 2 функции, определенные для play
и pause
:
videoPlayer.on('play', function () { //play video }); videoPlayer.on('pause', function () { //pause video });
У меня возникли проблемы с определением последовательного действия pause
-gt; gt; play
. Будет ли работать приведенная ниже функция continue
?
videoPlayer.on('pause').on('play', function () { //Continue video })
Комментарии:
1. Как это
on
определяется? Похоже, это может быть jQuery, у которого есть четкая методология создания новых событий, так что это будет так же просто, какvideoPlayer.on('continue', function () { ... });
.
Ответ №1:
Если я правильно понял ваш вопрос, вы могли бы использовать обещания подождать, пока видео не будет приостановлено
function playP() { videoPlayer.on('play', function () { //play video }); } function pauseP() { return new Promise((res, rej) =gt; { videoPlayer.on('pause', function () { // do stuff res(true); }); }) } pauseP().then((x) =gt; { if (x) playP(); })
Этот код будет ждать, пока видео не будет приостановлено, чтобы начать прослушивание play
события.