1

動画のプレイリストを作成しています。ユーザーが新しいアイテムをクリックするたびに、新しいビデオのダウンロードを開始する前に、現在のビデオのダウンロードを停止したいと思います(まだ進行中の場合)。

これが私が思いついたコードです。部分的には機能しますが、destroyVideo() メソッドを呼び出したときにダウンロードがキャンセルされているようには見えません。Chromeのネットワークモニターを使用して確認しています。

function createVideo(videoObject) {
    var html = '<video id="video" loop><source id="mp4" src="' + video.mp4 + '" type="video/mp4" /><source id="webm" src="' + video.webm + '" type="video/webm" /><source id="ogg" src="'+ video.ogg + '" type="video/ogg" /></video>';

    var videoContainerDiv = $('#videoContainerDiv');    
    videoContainerDiv.append(html);

    var asset = $('#video');
    asset.get(0).load();
}


function destroyVideo() {
    var asset = $('#video');

    var mp4 = $('#mp4');
    mp4.attr('src', '');

    var webm = $('#webm');
    webm.attr('src', '');

    var ogg = $('#ogg');
    ogg.attr('src', '');

    asset.attr('src', '');
    asset.get(0).load();

    var videoContainerDiv = $('#videoContainerDiv');
    videoContainerDiv.empty();
}

私の質問は、それを行うためのより効果的な方法、クロスブラウザーはありますか?

ヘルプは大歓迎です!

4

1 に答える 1

1
function destroyVideo() {
    var asset = $('#video');
    asset.remove();
}
于 2012-12-03T20:21:00.330 に答える