• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

HTMLHTML5视频播放的方式

武飞扬头像
归子莫
帮助5

【HTML】讲讲HTML5视频播放的方式

引言

github:【HTML】讲讲HTML5视频播放的方式

内容速递:看了本文您能了解到的知识!

学新通

想要网页播放视频再也不需要使用插件了,HTML本身就支持,而且更加稳定!

上节讲了HTML5的音频播放,和音频播放一样,需要借助flash才能在网页上使用视频。随着HTML5出来以后,就不需要借助flash了,本身可以通过video标签支持。

1、HTML5视频的播放方式

学新通

在 HTML 中播放视频并不容易!准确的来说是想要做好兼容并不容易!

1.1、embed方式

embed定义一个外部的容器,用来装放MP4等视频文件。

例如

<embed src="movie.swf" height="200" width="200"/>

缺陷

  • embed标签在 HTML 4 中是无效的,因为它是HTML5新出的标签
  • 依赖浏览器的支持
  • 如果浏览器不支持 Flash,那么视频将无法播放

1.2、obejct方式

obejct也可以定义一个外部的容器,用来装放MP4等视频文件。

例如

<object data="movie.swf" height="200" width="200"/>

缺陷

  • 依赖浏览器的支持
  • 依赖插件的安装
  • 如果浏览器不支持 Flash,那么视频将无法播放

1.3、video方式

video标签是HTML5专门为视频出的一个标签。推荐使用!

<video src="horse.mp4" controls></video>

效果

学新通

缺陷

  • video标签在 HTML 4 中是无效的,因为它是HTML5新出的标签

  • 依赖浏览器的支持

2、最好的解决方案

上面讲了三种使用视频的方式,可以将一些结合起来使用。

示例

<video width="320" height="240" controls="controls">
  <source src="movie.mp4" type="video/mp4" />
  <source src="movie.ogg" type="video/ogg" />
  <source src="movie.webm" type="video/webm" />
  <object data="movie.mp4" width="320" height="240">
    <embed src="movie.swf" width="320" height="240" />
  </object>
</video>

讲解

看到以上使用了 4 种不同的视频格式,这样做的好处video元素会尝试播放以 mp4、ogg 或 webm 格式中的一种来播放视频。如果均失败,则回退到 embed>元素。

效果

显示的效果基本与video一致!

学新通

3、视频格式

video 元素支持三种视频格式: MP4, WebM, 和 Ogg

格式 MIME-type
MP4 video/mp4
WebM video/webm
Ogg video/ogg

4、video标签

4.1、video的属性

一些常用的video属性,全局属性在这里就没有列出来来了。更多请到w3school查阅。

属性 描述
autoplay 设置或返回是否在加载完成后随即播放音频/视频
controls 设置或返回音频/视频是否显示控件(比如播放/暂停等)
loop 设置或返回音频/视频是否应在结束时重新播放
muted 设置或返回音频/视频是否静音
preload 设置或返回音频/视频是否应该在页面加载后进行加载
src 设置或返回音频/视频元素的当前来源

4.2、video的事件

事件这是我们用来跟音频发生交互的重要武器。

同样的只给出部分事件,更多请到w3school查阅。

事件 描述
pause 当音频/视频已暂停时
play 当音频/视频已开始或不再暂停时
playing 当音频/视频在已因缓冲而暂停或停止后已就绪时
canplay 当浏览器可以播放音频/视频时
timeupdate 当目前的播放位置已更改时

5、来一个视频播放器的案例

讲了那么多,不就是等一个案例吗,来!

码上!

<!doctype html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width,initial-scale=1 user-scalable=0" />
    <title>video视频demo</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }

        body {
            -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
            font-family: "微软雅黑"
        }

        h1 {
            width: 100%;
            font-size: 1.5em;
            text-align: center;
            line-height: 3em;
            color: #33942a;
        }

        #video {
            margin: 20px 0;
            width: 100%;
            height: 200px;
        }
       
    </style>

</head>

<body>

    <h1>video视频播放demo</h1>

    <video id="video" controls src="https://www.runoob.com/try/demo_source/movie.mp4"></video>

</body>

</html>
学新通

效果

学新通

6、总结

视频播放的案例也走不掉的。本文主要是理论知识的讲解。

重构前端知识体系,你要一起吗?

系列好文

HTML历史:【HTML】你还会来看HTML吗?带你重温亦或走进

HTML标签:【HTML】带你重忆HTML那些记忆模糊的标签

HTML视频:【HTML】讲讲HTML5视频播放的方式

HTML音频:【HTML】HTML5给网页音频带来的变化

HTML语义化:【HTML】讲讲对HTML5的语义化的理解

HTML定位:【HTML】HTML5的新特性Geolocation

HTML拖放:【HTML】HTML5的拖放你用了吗

HTML缓存:【HTML】不来看看HTML5的WebStorage吗

HTML应用缓存:【HTML】HTML5的应用程序缓存

HTML的Web Werkors:【HTML】HTML5的Web Werkors

博客说明与致谢

文章所涉及的部分资料来自互联网整理,其中包含自己个人的总结和看法,分享的目的在于共建社区和巩固自己。

引用的资料如有侵权,请联系本人删除!

感谢万能的网络,W3C,菜鸟教程等!

感谢勤劳的自己个人博客GitHub学习GitHub

公众号【归子莫】,小程序【子莫说】

如果你感觉对你有帮助的话,不妨给我点赞鼓励一下,好文记得收藏哟!关注我一起成长!

幸好我在,感谢你来!

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfibbec
系列文章
更多 icon
同类精品
更多 icon
继续加载