关闭 HTML5 个视频中的音量控制和静音按钮

Turn off volume control and mute button in HTML5 video

我们的 HTML 移动应用中有一些视频播放效果很好。但是,我们的视频没有声音,只有字幕,所以我们需要移除音量滑块和静音按钮,但保留计时器栏。

这可以用 HTML 或 CSS 完成或切换吗?还是需要 javascript 才能做到这一点?

目前我们 html 标签中的设置只是:controls="controls"

超级简单:

你的 html 应该是这样的:

<video id="Video1">
  <source src="..." type="video/mp4">
  <source src="..." type="video/ogg">
  Your browser does not support HTML5 video.
</video>

然后添加一个自定义按钮来播放视频:

<button id="play" onclick="vidplay()">&gt;</button>

终于来个进度条了:

<progress id="progressbar" value="0" max="100"></progress>

然后在javascript添加一个按钮播放

var video = document.getElementById("Video1");

function vidplay() {

       var button = document.getElementById("play");
       if (video.paused) {
          video.play();
          button.textContent = "||";
       } else {
          video.pause();
          button.textContent = ">";
       }
    }

以及更新进度条的侦听器:

video.addEventListener('timeupdate', updateProgressBar, false);


function updateProgressBar() { 
var progressBar = document.getElementById('progressbar'); 
var percentage = Math.floor((100 / mediaPlayer.duration) * mediaPlayer.currentTime);
 progressBar.value = percentage; progressBar.innerHTML = percentage + '% played'; 
}

所以基本上 删除 "standard controls" 并创建你自己的。

如果您想获得更复杂的结果,我会推荐您另一种选择。这可以使用更可配置的设置,例如 video.js

从视频元素中完全删除控件属性。

在此处尝试:http://www.w3schools.com/tags/tryit.asp?filename=tryhtml5_video_controls。删除 "controls" 属性,该栏将消失。

这有效:

video::-webkit-media-controls-volume-slider {
display:none;
}

video::-webkit-media-controls-mute-button {
display:none;
}