Обнаружить тег <embed>, не загружающий видео - PullRequest
2 голосов
/ 29 февраля 2012

Я пытаюсь поймать ошибку с помощью следующего тега вставки (на iPad / iOS):

<embed width="320" height="240" 
  src="path/to/my/live/stream/playlist.m3u8"
  type="application/vnd.apple.mpegurl" postdomevents="true" id="movie1" />

Я пытался поймать его следующим:

$("#movie1").on('onerror', function() { alert('error!') } );

Я также пытался с onabort, onstalled, onended и onsuspend - все это не генерирует событие, когда видео не удается загрузить.

1 Ответ

3 голосов
/ 17 февраля 2014

Вам нужно будет сделать отдельный HTTP-запрос для проверки правильности пути к файлу.

var http = new XMLHttpRequest();
http.open('HEAD', 'http://path/to/your/video', false);
http.send();

if (http.status == 404) {
    throw new Error('Unable to load file')
} else {
    // Generate your <embed> tag here
}
...