33-视频与音频

第三十三章.视频与音频

1. video标签

  <!--
    src 视频地址
    width height 视频宽高
    controls 显示视频控件
    autoplay 自动播放(前提得加muted静音)
    muted 静音
    loop 循环播放
    poster

  -->
  <video
      src="./视频.mp4"
      width="500" height="400"
      controls

      muted
      loop
      poster="./sherry.png"
  ></video>
1.1 标签属性
  • src

    设置路径。

  • width/height

    设置标签的大小,类似于img,但是不会使视频文件拉伸。

  • controls

    无须值,有该属性则 显示视频控制面板。

  • autoplay

    无须值,有该属性则 自动播放。chrome为了用户体验不允许自动播放,但是允许静音下自动播放。

  • muted

    无须值,有该属性则 静音。

  • loop

    无须值,有该属性则 放完之后循环播放(默认是放完了停止)。

  • poster

    设置封面海报,需要指定一个图片地址。

  • preload

    设置页面加载后是否加载视频(当设置了autoplay时,此属性会被忽略):

    • auto - 加载整个视频
    • metadata - 加载元数据(视频时长、尺寸大小等)
    • none - 不加载视频
1.2 相关API
  • play() pause()

    播放、暂停。

  • 属性

    duration – 视频总时长

    currentTime – 当前时长

    ended – 当前是否是播放完的状态

    volume – 声音大小 (0~1 之间)

    defaultPlaybackRate – 播放速率(1.0正常速,最大2.0)

  • 事件

    onplay – 播放时触发(不是持续性触发,每次播放触发一次)

    onpause – 暂停时触发

    ontimeupdate – 播放进度发生改变时触发

    onended – 播放结束时触发

    oncanplay – 视频准备就绪,浏览器能够播放时触发

1.3 source

用于兼容,可以通过source指定多个播放源文件,浏览器会依次自动所支持的文件播放。

2. audio标签

与video标签基本一毛一样……

当然,audio不支持 width、height,不支持海报poster,chrome也不支持静音播放(本来就听个响,都静音了还放啥)

<!DOCTYPE html>
<html lang="zh-cn">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <style>
    *{margin:0;padding:0;font-family:"Microsoft Yahei";}

  </style>
</head>
<body>
  <div>
    <audio src="./audio/35.mp3"></audio>
    <audio src="./audio/41.mp3"></audio>
    <audio src="./audio/42.mp3"></audio>
    <audio src="./audio/43.mp3"></audio>
    <audio src="./audio/44.mp3"></audio>
    <audio src="./audio/45.mp3"></audio>
    <audio src="./audio/46.mp3"></audio>
    <audio src="./audio/47.mp3"></audio>
    <audio src="./audio/48.mp3"></audio>
  </div>
  <script>

    let audio = document.querySelectorAll("audio");

    document.onkeydown = function(e){
      let index = 0;
      switch (e.keyCode) {
        case 81:
          index = 0;
          break;
        case 87:
          index = 1;
          break;
        case 69:
          index = 2;
          break;
        case 82:
          index = 3;
          break;
        case 84:
          index = 4;
          break;
        case 89:
          index = 5;
          break;
        case 85:
          index = 6;
          break;
        case 73:
          index = 7;
          break;
        case 79:
          index = 8;
          break;
      }

      audio[index].currentTime = 0;
      audio[index].play();
    };

  </script>
</body>
</html>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值