build a custom YouTube HTML5 player on CodePen by utilizing the YouTube IFrame Player API
fsBtn.addEventListener('click', () =>
if (!document.fullscreenElement) player.requestFullscreen();
else document.exitFullscreen();
);
.controls-center
order: 3;
width: 100%;
margin-top: 0.3rem;
- Play/pause toggle
- Progress bar seek & update
- Time display
- Fullscreen mode
video.addEventListener('progress', () => {
try
const buffered = video.buffered;
if (buffered.length)
const end = buffered.end(buffered.length -1);
const pct = (end / video.duration) * 100;
buffer.style.width = pct + '%';
// close menu on clicking outside
document.addEventListener('click', (e) =>
if (!speedBtn.contains(e.target) && !speedMenu.contains(e.target))
speedMenu.classList.remove('show');