我在一个有视频的网页上工作。 在重新排版页面时,我想随机启动一个静音视频。滚动后,视频取消静音。
我已经完成了随机视频javascript,但我无法对视频进行静音... 当我启动页面时,视频以声音开始......
这是我的代码:
<div id="mixmen" onmouseover="play()" onmouseout="mute()" onclick="location.href='http://ap-mixmen.com/','_blank'" >
<div class="video">
<section id="videos">
<video id="videos" preload="none" style="height:100%">
<source src="imgs/mixmen.mp4" type="video/mp4"></video>
<video id="videos" preload="none" style="height:100%">
<source src="imgs/mixmen2.mp4" type="video/mp4"></video>
<video id="videos" preload="none" style="height:100%">
<source src="imgs/mixmen3.mp4" type="video/mp4"></video>
<video id="videos" preload="none" style="height:100%">
<source src="imgs/mixmen4.mp4" type="video/mp4"></video>
</section>
</div>
<script>
(function () {
"use strict";
document.getElementById("videos").muted = true;
var videosSection = document.getElementById("videos");
var videosSectionClone = videosSection.cloneNode();
var videos = videosSection.getElementsByTagName("video");
var randomVideo = videos.item(Math.floor(Math.random() * videos.length)).cloneNode(true);
randomVideo.removeAttribute("controls");
randomVideo.setAttribute("preload", "auto",);
videosSectionClone.appendChild(randomVideo);
videosSection.parentNode.replaceChild(videosSectionClone, videosSection);
randomVideo.play();
})();
var videosSection = document.getElementById("videos");
function play()
{
video.muted = false;
}
function mute()
{
video.muted = true;
}
</script>
</div>
你知道它为什么不起作用吗?
答案 0 :(得分:0)
尝试将静音添加到视频标记
例:
答案 1 :(得分:0)
尝试添加&#34;静音&#34;到视频标签。
<video id="videos" preload="none" muted style="height:100%">
<source src="imgs/mixmen.mp4" type="video/mp4"></video>
答案 2 :(得分:0)
您好第一部分ID必须与您的视频标签不同,那么您的视频标签也必须具有不同的ID,最后您将“muted = true”应用于所选元素。如果您要将页面加载中的所有视频静音,可以按标记名称访问它们,然后按如下方式应用静音:
const videos= [...document.getElementsByTagName('video')];
videos.forEach((video) => { video.muted = true });