所以我创建了一个简单的视频播放列表,它可以很好地处理我正在托管的视频但是在加载youtube视频src时出现上述错误。 Onclick我从数据attr抓取url并使用video.js src函数加载新视频。
视频设置:
<video id="fatigue-1"
class="video-js vjs-default-skin"
controls
preload="auto"
width="100%"
height="100%"
data-setup='{"techOrder":["youtube", "html5"], "src": "https://www.youtube.com/watch?v=SS4F1U5FuNM"}' >
</video>
更新src功能:
updateSrc: function(e) {
var videoURL = $(e.currentTarget).attr("data-url"),
videoType = $(e.currentTarget).attr("data-type"),
videoID = this.$el.find(".video-js").attr("id"),
videoPlayer = videojs(videoID);
videoPlayer.src({type: videoType, src: videoURL});
}
我不确定youtube插件是否与src函数一起工作,因为当我的方法运行时,它会更新数据设置attr之外的src,并且在文档中它声明应该在内部定义url。此外,视频ID更改为显示正在使用的html5 api而不是youtube。见下文:
<video id="fatigue-1_html5_api"
class="vjs-tech"
preload="auto"
data-setup="{"techOrder":["youtube", "html5";], "src": "https://www.youtube.com/watch?v=SS4F1U5FuNM";}"
src="//www.youtube-nocookie.com/embed/yP41vpFOKVA">
</video>
想知道是否有人使用videojs动态加载youtube视频的工作示例,或者可以看到我正在制作的任何明显错误?