您的位置:首页 > 篮球集锦 > NBA集锦 > 灰熊集锦
2022年12月28日 NBA常规赛 太阳vs灰熊 全场集锦
2022-12-28 16:36:30
event.data === YT.PlayerState.BUFFERING) { play = false; } else { play = true; } iframe.contentWindow.postMessage(JSON.stringify({ event: 'command', func: play ? 'playVideo' : 'pauseVideo' }), '*'); } // 处理进度条 function handleProgressBarChange(event) { const progressValue = event.target.value / 100; iframe.contentWindow.postMessage(JSON.stringify({ event: 'command', func: 'seekTo', args: [progressValue] }), '*'); } // 更新时间显示 function updateTimeDisplay() { const currentTime = player.getCurrentTime(); const duration = player.getDuration(); timeDisplay.textContent = formatTime(currentTime) + ' / ' + formatTime(duration); } // 格式化时间 function formatTime(seconds) { const minutes = Math.floor(seconds / 60); const secondsLeft = Math.round(seconds % 60); return `${minutes}:${secondsLeft < 10 ? '0' : ''}${secondsLeft}`; } // 添加事件监听器到播放/暂停按钮 playPauseButton.addEventListener('click', () => { if (player) { const state = player.getPlayerState(); handlePlayPause({ data: state }); } }); // 处理进度条变化 progressBar.addEventListener('input', handleProgressBarChange); // 全屏处理 function handleFullScreen() { iframe.requestFullscreen(); } // 添加事件监听器到全屏按钮 fullScreenButton.addEventListener('click', () => { handleFullScreen(); }); // 启动 YouTube iFrame API 准备就绪事件处理器 window.onload = onYouTubeIframeAPIReady; } else { console.error('YouTube iFrame API 不可用'); } ``` ### 说明: 1. **HTML 结构**: - `iframe` 元素用于嵌入 YouTube 视频。 - `controls` 部分包含播放按钮、全屏按钮和进度条。 - `progress-bar` 是一个范围输入框,用于控制视频的播放位置。 2. **CSS 样式**: - 为进度条添加了背景色和滑块样式。 - 更新时间显示格式化为 MM:SS。 3. **JavaScript 代码**: - 使用 YouTube iFrame API 初始化播放器,并处理状态变化、播放暂停、进度条更新等事件。 - `onYouTubeIframeAPIReady` 函数初始化播放器并设置事件处理器。 - `handlePlayPause` 和 `handleProgressBarChange` 处理播放和进度条变化。 4. **时间格式化函数**: - 将秒数转换为 MM:SS 格式显示在页面上。 通过以上代码,你可以实现一个带有进度条和时间显示的 YouTube 视频嵌入器。确保替换 `https://www.youtube.com/embed/exampleID` 中的 `exampleID` 为你实际需要嵌入的视频 ID。 ### 注意事项: - 确保在网页加载时调用 `onYouTubeIframeAPIReady` 函数。 - 需要加载 YouTube 的播放器 API 脚本。 希望这个示例对你有帮助!如果有任何问题,请随时提问。