📅  最后修改于: 2023-12-03 15:27:55.014000             🧑  作者: Mango
在开发一个视频播放器时,需要使用到许多不同的技术和代码片段。以下是一些常见的代码片段和技术,可以帮助您开始开发自己的视频播放器。
<video>
元素嵌入视频<video src="video.mp4" controls></video>
src
:视频的URLcontrols
:用于启用控件 <video src="video.mp4" width="640" height="360"></video>
width
:视频的宽度height
:视频的高度<video src="video.mp4" controls>
<track src="subtitle.vtt" kind="subtitles" srclang="en" label="English">
</video>
src
:视频的URLcontrols
:用于启用控件track
:添加字幕所需的轨道元素 src
:字幕文件的URLkind
:定义轨道的类型(字幕,标题等)srclang
:定义字幕的语言label
:用于标识字幕语言的文本video::-webkit-media-controls-play-button {
background-image: url(play-button.png);
width: 50px;
height: 50px;
}
::-webkit-media-controls-play-button
:选择要自定义的媒体控件background-image
:自定义播放按钮的样式 width
:播放按钮的宽度 height
:播放按钮的高度 video::-webkit-media-controls-timeline-container {
background-color: gray;
}
video::-webkit-media-controls-timeline {
background-color: red;
}
video::-webkit-media-controls-current-time-display {
color: white;
}
::-webkit-media-controls-timeline-container
:用于自定义进度条容器background-color
:设置进度条容器的背景颜色 ::-webkit-media-controls-timeline
:用于自定义进度条background-color
:设置进度条的背景颜色::-webkit-media-controls-current-time-display
:用于自定义当前时间的显示color
:设置当前时间的字体颜色const video = document.querySelector('video');
const playButton = document.querySelector('.play-button');
playButton.addEventListener('click', () => {
if (video.paused) {
video.play();
playButton.textContent = 'Pause';
} else {
video.pause();
playButton.textContent = 'Play';
}
});
document.querySelector('video')
:选择要控制的视频元素 document.querySelector('.play-button')
:选择播放/暂停按钮 video.paused
:检查视频是否已暂停 video.play()
:播放视频 video.pause()
:暂停视频 playButton.textContent
:更改播放/暂停按钮的文本const video = document.querySelector('video');
const progressBar = document.querySelector('.progress-bar');
video.addEventListener('timeupdate', () => {
const progress = (video.currentTime / video.duration) * 100;
progressBar.style.width = `${progress}%`;
});
document.querySelector('video')
:选择要控制的视频元素document.querySelector('.progress-bar')
:选择进度条元素 video.addEventListener('timeupdate')
:当视频播放时间更新时,执行回调函数 video.currentTime
:获取视频当前播放时间 video.duration
:获取视频总时长 progressBar.style.width
:更改进度条的宽度