HTML5 video标签提供了丰富的播放控制功能,使开发者能够通过JavaScript对视频进行各种操作,以下是关于HTML5 video标签的播放控制的详细学习笔记:
获取影片总时长
1、添加ID:为了方便操作video元素,首先需要给video标签添加一个ID。
2、监听元数据加载完成事件:使用loadedmetadata
事件监听器来获取视频的总时长,当元数据(包括时长)加载完成后,该事件会被触发。
3、获取总时长属性:通过video元素的duration
属性可以获取到视频的总时长,该属性的单位为秒。
var myVideo = document.getElementById('myVideo'); myVideo.addEventListener("loadedmetadata", function(){ var tol = myVideo.duration; // 获取总时长 });
播放和暂停控制
1、播放方法:使用play()
方法开始播放视频。
2、暂停方法:使用pause()
方法暂停视频。
function playVideo() { myVideo.play(); } function pauseVideo() { myVideo.pause(); }
获取影片播放时间和设置播放点
1、监听播放时间更新事件:使用timeupdate
事件监听器来获取视频的当前播放时间,当视频播放位置改变时,该事件会被触发。
2、获取当前播放时间:通过video元素的currentTime
属性可以获取到视频的当前播放时间,该属性是可读写的。
3、设置播放点:通过修改currentTime
属性的值可以设置视频的播放点,注意单位是秒。
myVideo.addEventListener("timeupdate", function(){ var currentTime = myVideo.currentTime; // 获取当前播放时间 console.log(currentTime); // 在调试器中打印 }); function setPlaybackPoint(seconds) { myVideo.currentTime = seconds; // 设置播放点 }
音量的获取和设置
1、获取音量:通过video元素的volume
属性可以获取到视频的当前音量,该属性的值在0.0(静音)到1.0(最大音量)之间。
2、设置音量:通过修改volume
属性的值可以设置视频的音量。
3、监听音量变化事件:使用volumechange
事件监听器可以在音量改变时执行相应的操作。
// 获取当前音量 var volume = myVideo.volume; console.log(volume); // 在调试器中打印 // 设置音量 myVideo.volume = 0.5; // 设置音量为50% // 监听音量变化事件 myVideo.addEventListener("volumechange", function(){ var newVolume = myVideo.volume; // 获取新的音量值 console.log(newVolume); // 在调试器中打印 });
相关问答FAQs
1、如何实现视频的快进和倒回?
答:可以通过修改currentTime
属性的值来实现视频的快进和倒回,将currentTime
增加10秒可以实现快进,减少10秒可以实现倒回,代码如下:
function fastForward() { myVideo.currentTime += 10; // 快进10秒 } function rewind() { myVideo.currentTime = 10; // 倒回10秒 }
2、如何在页面加载时自动播放视频?
答:可以使用autoplay
属性来设置视频在页面加载时自动播放,需要注意的是,大多数现代浏览器出于用户体验考虑,要求视频在自动播放时必须是静音状态,并且用户需要与页面有过交互(如点击)才能启用声音,代码如下:
<video id="myVideo" controls preload="auto" width="300" height="165" poster="http://img0.ph.126.net/I10JqUUJDmlEtE_XYl4hOg==/6608842237655242020.jpg" src="http://www.w3cschool.cc/try/demo_source/mov_bbb.mp4" autoplay muted></video>
# HTML5 video标签学习笔记(二):播放控制
## 一、
在HTML5中,`