显示几个背景视频
Display several background videos
我试图用Javascript和createElement方法显示不同的背景视频,以便只有一个视频标记节点。点击一个链接,视频显示得很好,但其他视频则不然。我还检查了DOM元素,并且两个<video>
+<source>
标记的两个元素(id和src)都切换得很好(movie1>movie2)。看起来浏览器会保留第一个视频,即使DOM元素中的元素已经被很好地修改了。
<head>
<script>
var movieNow = "";
function playVideo(movie, mp4) {
if (movieNow!="") {
document.getElementById(movieNow).pause();
document.getElementById(movieNow).style.display="none";
document.getElementById(movieNow).id = movie;
document.getElementById('mysource').src = "videos/"+mp4+".mp4";
document.getElementsByTagName("Video").play();
document.getElementsByTagName("Video").style.display="block";
} else {
bckMovie = document.createElement("video");
bckMovie.id = movie;
bckMovie.className = "myvideo";
bckMovie.innerHTML = "<source src='videos/"+mp4+".mp4' type='video/mp4' id='mysource'>";
document.body.appendChild(bckMovie);
document.getElementById(movie).style.display="block";
document.getElementById(movie).play();
}
movieNow = movie;
}
</script>
<body>
<a href="javascript:playVideo('movie1', 'movie123')">Movie 1</a>
<a href="javascript:playVideo('movie2', 'movie456')">Movie 2</a>
...
</body>
你有一些逻辑问题。。。请在JsFiddle上检查这段代码,它似乎可以根据您的需要工作。https://jsfiddle.net/o5fdqurw/2/
<head>
<script>
var movieNow = "";
function playVideo(mp4) {
var movieNow = document.getElementById("movie");
if (movieNow !== null) {
movieNow.pause();
movieNow.style.display="none";
document.getElementById('mysource').src = "videos/"+mp4+".mp4";
movieNow.play();
movieNow.style.display="block";
} else {
bckMovie = document.createElement("video");
bckMovie.id = "movie";
bckMovie.className = "myvideo";
bckMovie.innerHTML = "<source src='videos/"+mp4+".mp4' type='video/mp4' id='mysource'>";
document.body.appendChild(bckMovie);
document.getElementById("movie").style.display="block";
document.getElementById("movie").play();
}
}
movieNow = movie;
</script>
<body>
<a href="javascript:playVideo('movie123')">Movie 1</a>
<a href="javascript:playVideo('movie456')">Movie 2</a>
...
</body>
相关文章:
- 操作员”;新的“;根据我想在几个JavaScript文件中使用的类,在JavaScript中使用
- 可以't将几个数字设置为<输入类型=“;数字“>
- 当加载几个js文件时,defer属性应该如何工作
- 使用几个<脚本>标签不会't工作-只调用一个脚本
- 如何从数组中删除几个相同的项
- 包括php文件和几个js文件
- 在几个元素上模拟onclick事件
- 如何更改与Backbone集合中的模型相关联的几个元素的css属性
- 如何在几个jQuery对象上调用jQuery函数
- 使用Javascript对象为具有两个背景图像的DIV设置样式时出现问题
- 用PHP/MMySQL和JavaScript填充几个HTML分区
- 点击几个按钮后动态网站更改
- d3日历视图:如何将所有内容放在一个svg中,而不是放在几个svg中
- 在JavaScriptES6中,如何从散列中只获取几个属性
- 多个 $(document).ready(function() 但只有前几个被解雇
- 几个用于布线的角度模块
- 使用 1 函数使一个值等于几个不同的变量
- 几个jQuery日期选择器小部件,只向其中一个添加类
- 显示几个背景视频
- Javascript:下载图像一次,将其设置为src或背景几个对象