专栏首页极客起源微信小程序开发实战(14):音频组件(audio)

微信小程序开发实战(14):音频组件(audio)

-----------支持作者请转发本文-----------

audio是用于播放在线音频的组件,该组件默认会带一个控制面板,用于控制音频的播放和暂停,以及显示音频作者、音频名称和当前播放时间信息。audio组件必须设置的属性是src,该属性用于指定音频文件的地址(通常为网址),如果要想让audio组件显示控制面板,需要设置controls属性值为true。该属性的默认值是true,但必须指定该属性,如果不添加该属性,仍然不会显示控制面板。下面是一个使用audio组件简单的例子。

<audio src="http://5.1015600.com/2014/ring/000/118/28b0e17cfab0136677648b39cb8b7fbc.mp3"  controls/>

使用该布局后,会显示如图1所示的效果。

图1 audio组件的控制面板

点击播放按钮即可播放音乐,再次点击即可停止播放。

audio组件还有如下3个比较常用的属性。

  • author:音频作者的名字
  • name:音频名字
  • poster:音频对应封面图像的地址 下面的布局文件设置了这3个属性。
<audio  poster="http://geekori.cn/img/weixin_code.png" author="李宁" name="笑傲江湖" src="http://5.1015600.com/2014/ring/000/118/28b0e17cfab0136677648b39cb8b7fbc.mp3"  controls/>

显示的效果如图2所示。

图2 显示相关信息的audio组件

audio组件还有一些事件可以设置,最常用的是bindplay和bindpause事件,其中播放音频时触发bindplay,暂停音频时触发bindpause。下面的布局代码演示了这两个属性。

<audio bindpause="paused" bindplay="audioPlayed"
 poster="http://geekori.cn/img/weixin_code.png" author="李宁" name="笑傲江湖" src="http://5.1015600.com/2014/ring/000/118/28b0e17cfab0136677648b39cb8b7fbc.mp3"  controls/>

paused和audioPlayed方法的代码如下:

audioPlayed: function(e) {
   console.log('audio is played')
},
paused:function(e)
{
   console.log('audio is paused')
}

当播放和暂停音频时,会在Console中输出如图3所示的日志信息。

图3 输出播放和暂停日志信息

注意:audio组件理论上是可以播放本地音频文件的,不过不能直接指定操作系统(Windows或macOS)的本地路径。在下一节介绍的video组件,可以使用wx.chooseVideo方法选择视频文件,不过该方法返回的路径是以wxfile开头的临时文件路径,而目前还没有提供wx.chooseAudio方法,所以暂时无法使用本地音频文件路径。

本文分享自微信公众号 - 极客起源(geekculture),作者:geekori

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-07-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 微信小程序开发实战(27):录音

    通过wx.startRecord和wx.stopRecord方法,可以录制和停止录制音频。如果成功录制音频,会将音频存在临时文件中,并返回临时音频文件名,以便后...

    蒙娜丽宁
  • 微信小程序开发实战(28):播放、暂停、停止声音

    使用wx.playVoice方法可以播放指定的音频文件,该方法需要设置一个filePath属性,用来指定音频文件的路径。使用wx.pauseVoice方法可以暂...

    蒙娜丽宁
  • 微信小程序开发实战(23):WebSocket实战

    WebSocket是一种在单个TCP 连接上进行全双工通讯的协议。 在WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就直接可以建立持...

    蒙娜丽宁
  • JavaWeb学习总结(一)——JavaWeb开发入门

      WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源。   Internet上供外界访问的Web资源分为:

    Java团长
  • JVM学习系列学习四

    本文是《JVM学习系列》中的第三篇文章。如果想系统的学习,建议从本教程第一篇开始看。

    凯哥Java
  • 喜马拉雅音频获取~带你省流量

    本文原本仅是想作为一个在推文"一小时入手Python"上线之前的预热,并将其思路和源码以后台回复的形式发送给需要的用户,并没有准备以推文的形式发出来,但鉴于目前...

    石璞东
  • VR/AR+购物时代即将来临?足不出户逛遍世界,我还要这实体店有何用!

    VRPinea
  • TP入门第二天

    1、配置说明 //’配置项’=>’配置值,配置在conf文件夹下config.php 2、Action文件定义规定 类名和文件名一样,首字母大写,后面必须要加A...

    苦咖啡
  • CreatorPrimer教程源码&Creator工作流

    我们将组件化思维再扩展到人,也可说程序员为美术、策划赋能,同时美术、策划又为程序员腾挪出宝贵的时间,从而形成一种良形循环。

    张晓衡
  • Springboot发送邮件

    Spring提供了非常好用的 JavaMailSender接口实现邮件发送。在Spring Boot的Starter模块中也为此提供了自动化配置。下面通过实例看...

    用户3467126

扫码关注云+社区

领取腾讯云代金券