Прерывание загрузки видео в Internet Explorer - PullRequest
1 голос
/ 03 апреля 2012

Я разрабатываю эту игру на JavaScript, которая управляет загрузкой ресурсов до того, как что-то случится.Сначала класс preloader загружает файл json ресурсов, который содержит все перечисленные ресурсы для загрузки.Этот файл содержит ссылки на aprox.30 изображений, 8 файлов JSON и 5 видео.Каждый отдельный ресурс, кроме видеофайлов, прекрасно загружается во всех основных браузерах (Firefox, Safari, Explorer, Chrome), но загрузка этих 5 видеофайлов прерывается Internet Explorer.

Я использую HTML шаблон , может быть, это как-то связано с этим.

Вот что я получаю при просмотре сети: Network tab view in internet explorer Ссылка на файл изображения в полном размере

Иногда загружаются первые два видео, иногда нет ни одного из них.Вот фрагмент моего кода для загрузки этих видео:

case "ogv":
case "mp4":
    item = document.createElement('video');
    var itemSource = document.createElement('source');
    item.id = 'vid'; item.width = '600'; item.height = '450'; item.controls = false;
    if (extension == "mp4") {
        itemSource.id = 'mp4'; itemSource.type = 'video/mp4; codecs="avc1.42E01E, mp4a.40.2"';
    } else if (extension == "ogv") {
        itemSource.id = 'ogv'; itemSource.type = 'video/ogg; codecs="theora, vorbis"';
    }
    itemSource.src = pathToAsset;
    item.appendChild(itemSource);
    item.addEventListener("canplaythrough", onVideoCanPlaythrough, false);
    item.load();
    break;

А вот обработчик слушателя:

var onVideoCanPlaythrough = function () {
    console.log("onVideoCanPlaythrough");
    item.removeEventListener("canplaythrough", onVideoCanPlaythrough, false);
    assets[assetID] = item;
    callback.call();
}

console.log("onVideoPlaythrough) не запускает один раз в Internet Explorer.

Я проверил, чтобы убедиться, что все остальное правильно (я получаю правильные URL в моей переменной pathToAsset и т. Д. Это работает в любом другом браузере (кромеопера, которую я еще не проверял) , , но не в IE

Кто-нибудь может подсказать, как подойти к отладке такого рода проблем?

1 Ответ

0 голосов
/ 03 апреля 2012

Видимо, вы запускаете загрузку видео с оператором video.play(), а не video.load() в Internet Explorer 9. Это просто замечательно!

...