我正在努力更改src
元素中<source>
元素的<video>
属性。
原始加价
<video id='myVidID' class='video-js vjs-default-skin' controls autoplay preload='auto' width='1280' height='720' poster='poster.jpg' data-setup='{}'>
<source src='uploads/video/static/vid1.mp4' type='video/mp4'>
<source src='uploads/video/static/vid1.webm' type='video/webm'>
Whoops. Your browser does not Support HTML5 or Flash. Please upgrade your browser.
</video>
我想:
获取视频容器(元素),然后引用child1,然后引用child2(0,1)。
我的代码似乎更改了src
代码(<video>
)中的运行时添加的<video src=''
属性,而不是两个子源代码'src
属性。
P.S。我的脚本运行,并确实更改了视频代码中的src
属性(这不是预期的更改)。
<script type="text/javascript">
var myVideo = videojs("myVidID");
function onComplete(){
var child = $('#myVidID').children();
child[0].src = 'uploads/video/demovid-01-02-2014.mp4';
child[1].src = 'uploads/video/demovid-01-02-2014.webm';
myVideo.load();
myVideo.play();
myVideo.off('ended', onComplete);
};
myVideo.on('ended', onComplete);
</script>
答案 0 :(得分:1)
由于您使用的是video.js,因此最好使用其API来设置新来源。这样,如果必须使用Flash后备,它也会起作用。
myPlayer.src([
{ type: "video/mp4", src: "uploads/video/demovid-01-02-2014.mp4" },
{ type: "video/webm", src: "uploads/video/demovid-01-02-2014.webm" }
]);
https://github.com/videojs/video.js/blob/master/docs/api/vjs.Player.md#src-source-