video标签常用属性介绍,下面以vue中使用video标签来举例:
1、video标签常用属性 下面shareVideoLink为视频连接地址
<!--autoplay=>自动播放 controls=>是否显示控件 loop=>是否循环播放 muted=>是否静音播放 poster=>视频封面 src=>播放源 preload=>页面加载时进行加载 , 如果有autoplay那么该属性就会被无视 src="https://media.w3.org/2010/05/sintel/trailer.mp4"--> <video id="videoPlayer" width="100%" height="100%" loop controls :src="shareVideoLink"></video>
2、获取视频播放时长,初始化在mounted执行此方法,当视屏开始播放的时候,可以获取到视频播放的实时时间点
/** * 获取视频播放时长 */ getVideoTime () { if (document.getElementById ('videoPlayer')) { let videoPlayer = document.getElementById ('videoPlayer'); videoPlayer.addEventListener('timeupdate', function () { console.log(`当前的时间点是${videoPlayer.currentTime},视频长度是${videoPlayer.duration}`); }, false) } }
3、设置视频从某个具体时间点开始播放,下面方法中参数num表示要从什么时间点开始播放视频,比如:点击一个按钮去执行下面方法:
比如后台返回了2460198为毫秒 只需要转换为秒就好了,video会从秒自动计算,赋值给video标签秒就好,2460198就是246.0198秒(s) 这时候我们调用下面方法就可以这么写:
this.playBySeconds(2460198/1000) 或者this.playBySeconds(2460.198) ,因为2460.198秒是41.0033001分,所以视频会自动从41.0033001分开始播放,就OK了
//设置播放点,续播 playBySeconds (num) { if (num && document.getElementById ('videoPlayer')) { let myVideo = document.getElementById ('videoPlayer'); myVideo.play (); myVideo.currentTime = num; } },
video其他属性总结:
<button type="button" onclick="play()">播放</button> <button type="button" onclick="pause()">暂停</button> <button type="button" onclick="load()">切换视频</button> <button type="button" onclick="open_voice()">打开声音</button> <button type="button" onclick="close_voice()">关闭声音</button> <script type="text/javascript" charset="utf-8"> var video = document.getElementById("video"); function play(){ video.play(); } function pause(){ video.pause(); } function load(){ video.src="http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4"; video.load(); } function open_voice(){ video.muted = false; } function close_voice(){ video.muted = true; } video.addEventListener("play", function(){ console.log("视频播放") }); video.addEventListener("pause", function(){ console.log("视频暂停") }); video.addEventListener("ended", function(){ console.log("播放结束") }); video.addEventListener("volumechange", function(e){ if(video.muted){ console.log("你关闭了声音") else{ console.log("你打开了声音") } }); </script>
交流
我是老礼,公众号「进军全栈攻城狮」作者 ,对前端技术保持学习爱好者。我会经常分享自己所学所看的干货,在进阶的路上,共勉!