关闭 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()">></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;
}
我们的 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()">></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;
}