URLを取得するためにサーバーにコールバックを行った後にビデオを読み込む必要があるWebページがあります。テストのために、私はページにビデオをロードしていますが、それが動作するときにコンテナを選択的に表示/非表示にします。VideoJSを使用しているときにビデオURLを動的に読み込むにはどうすればよいですか?
URLをsrcタグに直接埋め込み、data-setup = "{}"にすると正常に動作します。
しかし、動的に読み込もうとすると、ビデオを読み込むことができません(エラーはありません)。ここで
はHTMLです:<div id="video-container">
<video id="videoplayer" class="video-js vjs-default-skin" controls preload="auto">
<source id="videosource" type='video/mp4'>
<p class="vjs-no-js">
To view this video please enable JavaScript, and consider upgrading to a web browser that
<a href="http://videojs.com/html5-video-support/" target="_blank">supports HTML5 video</a>
</p>
</video>
そして、ここで私が実行しているコードです:
$.get(url,
function (data) {
videojs("videosource", {}, function() {
this.reset();
this.src(data);
this.load();
this.play();
});
});
私は.RESET()の呼び出しが含まれていない場合は、エラー"with this.el_.loadは関数ではありません。私が.reset()を呼び出すとエラーは発生しませんが、何もロードされません。私はChromeを実行していますが、Firefoxでも読み込めません。
同じ結果(エラーがないが、いずれかのビデオなし)にSRCを設定するとき、私はまた、代替パラメータを試してみました:
this.src({ type: "video/mp4", src: data });
私はCDN経由でバージョン5.8を使用しています。
どこが間違っているのでしょうか?
これを 'videojs(" videoplayer "、' ...、 'source'要素を完全に削除してみてください) – BeardFist
優秀 - 完全に機能しました。ありがとうございました –