私はこの問題に夢中です。タグのソースを変更し、<video>
リロードして再生するスクリプトがあります。問題は、どのバージョンの Internet Explorer でも動作しないことです。
というビデオ ソースの配列がありsequence.sources
、以下を含みます。
sequence.sources = ['video.webm', 'video.mp4', 'video.ogv'];
オブジェクトは別のsequences
配列からロードされるため、それがすべての動的な側面です。ビデオソースを変更するために使用する関数は次のとおりです。
var videoElem = document.getElementById('video');
// Remove all sources
while (videoElem.firstChild) {
videoElem.removeChild(video.firstChild);
}
// Add new sources
for (var i = 0; i < sequence.sources.length; i++) {
var srcElem = document.createElement('source');
srcElem.setAttribute('src', sequence.sources[i]);
videoElem.appendChild(srcElem);
}
// Initiate video
videoElem.load();
videoElem.play();
これは、IE 以外のすべてのブラウザーで完全に機能します。どうしようかな?src
タグの属性を直接変更しようとしまし<video>
たが、うまくいかないようです。<video>
タグ全体を削除して、更新されたソースで新しいタグを追加することさえ試みました。葉巻はありません。
これはトピックから外れている可能性がありますが、.htaccess ハックを追加して機能させる必要がある可能性を検討しています。どんな提案でも大歓迎です。
私の最終的な考えは、最初のものを除くすべてのソースが何らかの形で欠陥があり、再生されないということです. IE との互換性を確認する方法はありますか?
編集:開発者ツールの [ネットワーク] タブ206 partial
は、http 要求の結果として表示されます。これは、エンコーディングの互換性の問題である可能性が非常に高いです。それが事実であることが判明した場合、私はおそらくこの質問をすぐに閉じます。