HTML5新增的video标签配合原生js,实现视频案例!

其实该视频页面的结构十分的简单,就是一个视频文件,一个播放按钮,一个进度条,一个静音按钮,一个倍速播放按钮,一个视频暂停时弹出的广告页面,一个显示时间栏。总之页面的内容不算多。下面了就给大家展示下我写的页面结构。

Document

x

播放
00:00/00:00
    • x0.5
    • x1.0
    • x1.25
    • x1.5
    • x2.0
    • 倍速

      静音

      样式的话就十分简单了,大家也可以参照我的样式,也可以自己去写样式!不过最重要的东西我还没说,那就是功能的实现,请接着往下面看!

      div {

      width: 700px;

      height: 395px;

      position: relative;

      margin: 60px auto;

      /* background-color: pink; */

      }

      p {

      width: 80px;

      height: 80px;

      line-height: 80px;

      text-align: center;

      background-color: rgb(4 4 4 / 35%);

      border-radius: 50%;

      position: absolute;

      top: -40px;

      left: 0;

      right: 0;

      bottom: 0;

      margin: auto;

      color: #fff;

      display: none;

      z-index: 5;

      }

      div:hover {

      cursor: pointer;

      transition: all 2s;

      }

      /* div:hover p {

      visibility: visible;

      } */

      video {

      width: 700px;

      height: 395px;

      }

      .font1 {

      font-size: xx-large;

      }

      span {

      display: block;

      width: 220px;

      height: 240px;

      background-image: url(./source/122.png);

      background-size: cover;

      position: absolute;

      top: 60px;

      left: 240px;

      z-index: 6;

      display: none;

      }

      span em {

      box-sizing: border-box;

      display: block;

      width: 25px;

      height: 25px;

      padding: 0 4px;

      line-height: 20px;

      font-size: 24px;

      background-color: rgba(255, 81, 0, 0.795);

      position: absolute;

      right: 1px;

      top: 1px;

      }

      /* 底部栏 */

      .footer {

      height: 50px;

      background-color: rgb(0 0 0 / 35%);

      position: absolute;

      bottom: 0;

      left: 0;

      margin: 0;

      }

      /* 播放按钮 */

      .play {

      margin: 10px 10px;

      width: 50px;

      height: 30px;

      line-height: 30px;

      text-align: center;

      font-size: 18px;

      border-radius: 10px;

      color: #fff;

      border: 2px solid #fff;

      float: left;

      }

      /* 时间 */

      .time {

      width: 100px;

      height: 50px;

      margin: 18px 20px;

      float: left;

      color: #fff;

      }

      /* 倍速 */

      .quick {

      position: absolute;

      right: 0;

      bottom: 0;

      width: 60px;

      height: 176px;

      /* border: 1px solid rgb(17, 16, 16); */

      color: rgb(10, 9, 9);

      text-align: center;

      margin: 0 10px;

      text-align: center;

      }

      .quick_text {

      position: absolute;

      top: 130px;

      right: 4px;

      width: 50px;

      height: 30px;

      border: 2px solid hotpink;

      border-radius: 10px;

      color: rgb(243, 230, 230);

      text-align: center;

      line-height: 30px;

      margin: 5px auto;

      }

      ul {

      padding: 0;

      width: 50px;

      height: 107px;

      /* background-color: seagreen; */

      display: none;

      }

      ul li {

      list-style-type: none;

      padding: 0 11px;

      }

      .quick:hover .quickList {

      display: block;

      }

      .quickList li:hover {

      color: hotpink;

      }

      /* 进度条 */

      .progress {

      position: absolute;

      top: -61px;

      left: 0;

      width: 100%;

      height: 3px;

      background: #fff;

      }

      .progress .pro {

      width: 5px;

      height: 3px;

      background: rgb(236, 127, 182);

      position: absolute;

      left: 0;

      top: -60px;

      }

      .bar{

      position: absolute;

      left: 0;

      top: -3px;

      width: 8px;

      height: 8px;

      border-radius: 50%;

      background: rgb(255, 252, 252);

      z-index: 8;

      }

      /* 静音 */

      .mute {

      position: absolute;

      top: 4px;

      right: 90px;

      width: 50px;

      height: 30px;

      border: 2px solid hotpink;

      border-radius: 10px;

      color: rgb(243, 230, 230);

      text-align: center;

      line-height: 30px;

      margin: 5px auto;

      font-weight: 700;

      }

      /* 静音样式 */

      最后

      自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

      深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

      因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

      img

      既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

      如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

      由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
      己不成体系的自学效果低效漫长且无助。**

      因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

      [外链图片转存中…(img-xC3nwXV0-1714865213313)]

      [外链图片转存中…(img-mGif7OpV-1714865213313)]

      [外链图片转存中…(img-5HcEN4uP-1714865213313)]

      既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

      如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

      由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

    • 17
      点赞
    • 16
      收藏
      觉得还不错? 一键收藏
    • 0
      评论

    “相关推荐”对你有帮助么?

    • 非常没帮助
    • 没帮助
    • 一般
    • 有帮助
    • 非常有帮助
    提交
    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值