您好,我正在研究 HTML5 视频播放器,目前我遇到了一个奇怪的错误。我可以在 IE 和 Chrome 中正常播放视频,但是,当我想通过 java 脚本动态更改视频源时,我遇到了麻烦。 Chrome 可以毫无问题地更改视频源,但是 IE9 会保持以前的视频完整并且不会更改。 Safari 也能正常工作。
我确实尝试在 stackoverflow 中进行搜索,发现了很多相同的问题并尝试了几乎所有答案,但似乎 IE 有其自己的工作风格,或者我遗漏了一些东西。 只是为了确保我切换文件以验证两个视频都在 IE9 中工作并且都在 IE9 中工作,但是当我尝试通过 javascript 操作它们时它们只是不播放。示例代码如下
<div class="video">
<video id="example_video_2" class="video-js" width="640" height="264" controls="controls" preload="auto" >
<source src="song.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' /> </div>
</div>
虽然javascript很简单
function myNewSrc() {
var myVideo = document.getElementById('example_video_2');
// myVideo.src = "";
myVideo.src = "120235_VIDHIGH.mov";
//alert(myVideo.src);
myVideo.load();
myVideo.play();
//changeMovieSource('song.mp4','something');
//$("#example_video_2 > source").attr("src", "120235_VIDHIGH.mov");
//alert($("#example_video_2 > source").attr("src"));
}
最佳答案
删除完整的视频 html 元素并创建一个新元素,而不是仅仅替换其属性之一。
关于javascript - 无法在 IE9 上通过 JavaScript 更改视频标签的来源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6080433/