Слушайте все HTML видео события - PullRequest
2 голосов
/ 14 октября 2011

Играя с html5-видео и задалась вопросом, есть ли способ перечислить его события, как это происходит.

У меня есть один для завершения - myVideo.addEventListener ('завершено', videoEnded, false);

Что отлично работает, но как мне создать слушателя, который будет прослушивать каждое событие и называть их?

myVideo.addEventListener('ALL',AddToLog,false);
function AddToLog(){
   console.log(eventname);
}

Любые указатели приветствуются.

Dan.

Ответы [ 2 ]

4 голосов
/ 28 июня 2018

Может быть, кто-то найдет это полезным для отладки.Используя этот фрагмент кода, вы можете подписаться на все <video> или <audio> события одновременно.

Но, вероятно, лучше изучить список событий мультимедиа из спецификации .

function addListenerMulti(el, s, fn) {
  s.split(' ').forEach(e => el.addEventListener(e, fn, false));
}

var video = document.getElementById('#video');

addListenerMulti(video, 'abort canplay canplaythrough durationchange emptied encrypted  ended error interruptbegin interruptend loadeddata loadedmetadata loadstart mozaudioavailable pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting', function(e){
    console.log(e.type);
});

Множество кредитов слушателей событий идут в @ решение RobG .

0 голосов
/ 14 октября 2011

Вы не можете. Вы должны слушать определенные события.

Список возможных доступных событий можно найти в спецификации

...