3

src视频结束后,我使用以下代码更改视频属性。

我预加载了第二个视频,我将 src 更改为链接到第二个视频。

IEFirefox中,这可以完美运行,在 Chome 27.XX 中,视频元素在更改src.

奇怪的是......如果我使用断点来单步执行我的.ended函数中的代码,它就可以正常工作!

HTML

<video id="vid1" preload="auto" width="640" height="480" src="/Trans/video/sleigh60.mp4" controls>
</video>

<div style="display:none">
    <video id="vid2" src="/Trans/video/sleighRest.mp4" preload="auto">
    </video>
</div>

JavaScript

<script type="text/javascript">
    var vid2Source = '/Trans/video/sleighRest.mp4';
    var video = document.getElementById('vid1');

    video.addEventListener("ended", function() {
        video.src = vid2Source;
        video.load();
        video.play();
    });
</script>

感谢您的帮助。

4

1 回答 1

1

我在 Chrome 中使用以下代码遇到了同样的问题。

我以前的HTML:

<video  preload="auto" controls controlsList="nodownload" width="900">
    <source id="vidSrc"  type="video/mp4" />
</video>

我以前的 javascript 是:

jQuery('#vidSrc').attr('src','http://techslides.com/demos/sample-videos/small.mp4');

我正在更新 src 属性,但没有加载视频。所以我已经从视频中删除了源元素,并且源被附加并且运行良好。

更新的 HTML

<video id="vidSrc"  preload="auto" controls controlsList="nodownload" width="900">
</video>

更新的js:

jQuery('#vidSrc').html('<source src="http://techslides.com/demos/sample-videos/small.mp4" type="video/mp4" />');
于 2017-10-11T08:04:40.543 回答