视频播放器之video全局事件属性
  • 了解video全局事件属性
https://www.w3school.com.cn/tags/html_ref_eventattributes.asp
  • 主要还是媒体事件,挑几个重要的说吧
  • oncanplay:当文件就绪可以开始播放时运行的脚本(缓冲已足够开始时),说白了就是在视频在播放之前执行的事件
  • onended:当媒介已到达结尾时运行的脚本(可发送类似“感谢观看”之类的消息)
  • onpause:当媒介被用户或程序暂停时运行的脚本
  • onplay:当媒介已就绪可以开始播放时运行的脚本
  • onplaying: 当媒介已开始播放时运行的脚本
  • 这几个比较常用也比较好动,如果要深入研究的话,就是oncanplay,onplay,onplaying这三个事件触发的先后顺序,为此做了一个测试
<!-- demo.html -->
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width">
        <title>demo</title>
        <link rel="stylesheet" href="./demo.css">
    </head>
    <body>
        <h1>视频播放器的演示</h1>
        <video class="video" id="video" src="./1.周杰伦 - 告白气球_new_file(1)_x264(Av15227278,P1).mp4" controls></video>
        <script src="./demo.js"></script>
    </body>
</html>
// demo.js
var video = document.getElementById("video")
video.oncanplay = function(){
    console.log("this is a oncanplay...")
}
video.onplay = function(){
    console.log("this is a onplay...")
}
video.onplaying = function(){
    console.log("this is a onplaying...")
}
  • 测试结果就是当视频准备就绪可以开始播放的时候,就会触发oncanplay事件,一旦你暂停视频然后又重新播放视频的时候,就会onplay和onplaying事件,并且onplay事件在onplaying事件之前触发
  • 另外还有几个重要的事件,非常重要
  • ontimeupdate:当播放位置改变时(比如当用户快进到媒介中一个不同的位置时)运行的脚本,这个事件对于设计进度条非常重要
  • onvolumechange:每当音量改变时(包括将音量设置为静音)时运行的脚本
Logo

一站式 AI 云服务平台

更多推荐