ページの背景としてビデオを設定しようとしています。問題は、ビデオの1つのダウンロードをトリガーし、終了するとビデオの再生を再開するだけでなく、再度ダウンロードすることです。
これはささいなことであるかのように、5 回目の反復の後、ビデオの再生が停止します。
現在、Ubuntu 13.04でChrome 30.0.1599.14 devを使用しています
これがスクリーンショットです
この動作を停止する方法について何か提案はありますか?
ページの背景としてビデオを設定しようとしています。問題は、ビデオの1つのダウンロードをトリガーし、終了するとビデオの再生を再開するだけでなく、再度ダウンロードすることです。
これはささいなことであるかのように、5 回目の反復の後、ビデオの再生が停止します。
現在、Ubuntu 13.04でChrome 30.0.1599.14 devを使用しています
これがスクリーンショットです
この動作を停止する方法について何か提案はありますか?
<style type="text/css">
body { background: url(demo.jpg) center;
background-size: 300%;
width:100%;
height:150px;}
video { display: block; }
video#bgvid {
position: fixed;
top: 50%;
left: 50%;
min-width: 100%;
min-height: 100%;
width: auto;
height: auto;
z-index: -100000;
-webkit-transform: translateX(-50%) translateY(-50%);
transform: translateX(-50%) translateY(-50%);
}
@media screen and (max-device-width: 800px) {
body { background: url(demo.jpg) #000 no-repeat center center fixed; }
#bgvid { display: none; }
}
</style>
<script type="text/javascript">
//if it is not already in local storage
if (localStorage.getItem("demo") === null){
//make request for file
var oReq = new XMLHttpRequest();
oReq.open("POST", "http://LINK_TO_demo.mp4", true);
// arraybuffer needed for binary file
oReq.responseType = "arraybuffer";
// once loaded
oReq.onload = function(oEvent) {
// Convert to Blob Object
var blob = new Blob([oReq.response], {type: "video/mp4"});
var reader = new FileReader();
reader.readAsDataURL(blob);
reader.onload = function(e) {
var dataURL = reader.result;
localStorage.setItem("demo", dataURL);
// reload or add document ready function.
location.reload();
}
oReq.send();}}
var videlem = document.createElement("video");
videlem.autoplay = true;
videlem.loop = true;
videlem.poster = "demo.jpg";
videlem.id = "bgvid";
var sourceMP4 = document.createElement("source");
sourceMP4.type = "video/mp4";
sourceMP4.src = localStorage.getItem("demo");
sourceMP4.autoPlay = true;
videlem.appendChild(sourceMP4);
document.body.appendChild(videlem);
</script>
これにより、再生が速くなり、ビデオがローカル ストレージに保存されるため、サーバーへのリクエストが発生しなくなります。
この問題を回避する唯一の方法は、ファイルをローカル ストレージなどにロードすることです。上記の例