我已经制作了自定义视频控件,但是当视频播放时,我的进度条没有在全屏中相应地拉伸。因此,当视频到达结尾时,条形图大约是宽度的 1/3。
我相信这与将 barSize 设置为等于 fullScreen 之前的容器大小有关。条形尺寸设置为百分比,因此它会根据包装进行调整。我不知道如何使用 JS 使进度条适应包含栏。(不能使用 JQuery)
JS:
bar = document.getElementById('defaultBar');
barSize = bar.offsetWidth;
progress = document.getElementById('progressBar');
function move(e){
if(!media.paused && !media.ended){
var mouseX= e.offsetX;
newTime=((mouseX*media.duration)/barSize);
media.currentTime=newTime;
progress.style.width=mouseX+'px';
}
}
HTML:
<div id="defaultBar">
<div id="progressBar"></div>
</div>
CSS:
#defaultBar{
position:relative;
float:left;
width:59.5%;
height: 22px;
padding:0px;
border: 0px solid black;
background:yellow;
margin: 0px;
cursor: pointer;
}
#progressBar{
position:relative;
float:left;
height: 50%;
margin: 5px 0px;
border: 0px solid black;
background:green;
cursor: pointer;
}
不是 fullScreen 你可以看到进度条几乎在容器的末尾(黄色):
视频中的相同位置,进度条在容器末尾附近没有: