Прекъсване на зареждането на видеоклипа в Internet Explorer

Разработвам тази JavaScript игра, която управлява зареждането на активи, преди да се случи нещо. Първо, класът за предварително зареждане зарежда json файл с активи, който съдържа всички изброени активи за зареждане. Този файл съдържа връзки към прибл. 30 изображения, 8 json файла и 5 видеоклипа. Всеки един актив, освен видеофайловете, се зарежда добре във всеки основен браузър (firefox, safari, explorer, chrome), но зареждането на тези 5 видеофайла се прекъсва от Internet Explorer.

Използвам HTML шаблон, може би това има нещо общо с това.

Ето какво получавам в изгледа на мрежата: Изглед на раздела на мрежата в 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 и т.н. Това работи на всеки друг браузър (с изключение на opera, който нямам) все още не е тестван), но не и в IE

Може ли някой да предложи как да се подходи към отстраняването на грешки при такъв проблем?


person joncys    schedule 03.04.2012    source източник


Отговори (1)


Очевидно инициирате зареждането на видеоклиповете с оператор video.play(), а не video.load() в Internet Explorer 9. Това е просто страхотно!

person joncys    schedule 03.04.2012