微信小程序背景音乐开发详解


Posted in Javascript onDecember 12, 2019

wx.getBackgroundAudioManager() 

推荐大家使用背景音乐不在使用audio

audio播放音频加载时间长 体验需求达不到

相关文档

https://developers.weixin.qq.com/miniprogram/dev/api/media/background-audio/BackgroundAudioManager.html

相关代码

const bgMusic = wx.getBackgroundAudioManager() //创建背景音乐
Page({
 
 data: {
  id: '',//请求数据参数id
  musicMsg: {},//接收数据对象
 },
 
 onLoad: function (options) {
  var that = this
  that.setData({
   id: options.id,
  })
  that.getPicInfo() //请求服务器
 }, 
 // 开始播放
 listenerButtonPlay: function (src) {
  var that = this
  console.log(src)
  bgMusic.src = src;
  bgMusic.onTimeUpdate(() => { //监听音频播放进度
   console.log(bgMusic.currentTime)
  })
  bgMusic.onEnded(() => { //监听音乐自然播放结束
   console.log("音乐播放结束");
   that.listenerButtonPlay(that.data.musicMsg.mp3)
  })
  bgMusic.play(); //播放音乐
 },
 getPicInfo() {
  var that = this
  wx.request({
   url: 'https://xxxxx.xxxxx.com/1.json?id=' + that.data.id,
   header: {
    'content-type': 'application/json'
   },
   method: 'GET',
   success: function (res) {
    that.listenerButtonPlay(res.data.data.mp3) //成功回调执行播放音乐
    that.setData({
     musicMsg: res.data.data, //赋值对象
    })
 
   }
  })
 },
 
 onUnload() {
  var that = this
  that.listenerButtonStop()//页面卸载时停止播放
  console.log("离开")
 },
 
 //暂停
 audioPause: function () {
  var that = this
  bgMusic.pause(); //暂停播放音乐
  console.log('暂停')
 },
 audioPlay: function () {
  var that = this
  bgMusic.play(); //停止播放
  console.log('继续播放')
 },
 //停止播放
 listenerButtonStop: function () {
  bgMusic.stop()
 },
})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery 多级下拉菜单核心代码
May 21 Javascript
基于jquery的跟随屏幕滚动代码
Jul 24 Javascript
Js日期选择器并自动加入到输入框中示例代码
Aug 02 Javascript
express的中间件bodyParser详解
Dec 04 Javascript
JavaScript数组和循环详解
Apr 27 Javascript
倾力总结40条常见的移动端Web页面问题解决方案
May 24 Javascript
Node.js的文件权限及读写flag详解
Oct 11 Javascript
vue实现移动端图片裁剪上传功能
Aug 18 Javascript
AngularJS中的作用域实例分析
May 16 Javascript
详解Eslint 配置及规则说明
Sep 10 Javascript
Vue+ElementUI使用vue-pdf实现预览功能
Nov 26 Javascript
JavaScript 实现下雪特效的示例代码
Sep 09 Javascript
vue实现商城秒杀倒计时功能
Dec 12 #Javascript
深入理解 TypeScript Reflect Metadata
Dec 12 #Javascript
JS实现商城秒杀倒计时功能(动态设置秒杀时间)
Dec 12 #Javascript
vue-property-decorator用法详解
Dec 12 #Javascript
JS实现动态倒计时功能(天数、时、分、秒)
Dec 12 #Javascript
JavaScript Reflect Metadata实现详解
Dec 12 #Javascript
JS动态显示倒计时效果
Dec 12 #Javascript
You might like
编写安全 PHP应用程序的七个习惯深入分析
2013/06/08 PHP
PHP使用array_fill定义多维数组的方法
2015/03/18 PHP
通过修改配置真正解决php文件上传大小限制问题(nginx+php)
2015/09/23 PHP
PHP如何读取由JavaScript设置的Cookie
2017/03/22 PHP
laravel 关联关系遍历数组的例子
2019/10/10 PHP
JAVASCRIPT IE 与 FF中兼容问题小结
2009/02/18 Javascript
分享XmlHttpRequest调用Webservice的一点心得
2012/07/20 Javascript
使用jQuery.fn自定义jQuery翻页插件
2013/01/20 Javascript
JS实现程序暂停与继续功能代码解读
2013/10/10 Javascript
javascript比较两个日期的先后示例代码
2014/12/31 Javascript
基于bootstrap-datetimepicker.js不支持IE8的快速解决方法
2016/11/07 Javascript
基于cookie实现zTree树刷新后展开状态不变
2017/02/28 Javascript
JavaScript生成指定范围随机数和随机序列的方法
2018/05/05 Javascript
详解vue2.0监听属性的使用心得及搭配计算属性的使用
2018/07/18 Javascript
JSON生成Form表单的方法示例
2018/11/21 Javascript
vue+moment实现倒计时效果
2019/08/26 Javascript
vue实现百度搜索功能
2020/12/28 Javascript
node.js通过url读取文件
2020/10/16 Javascript
Pandas 数据框增、删、改、查、去重、抽样基本操作方法
2018/04/12 Python
Python3实现的Mysql数据库操作封装类
2018/06/06 Python
Python中几种属性访问的区别与用法详解
2018/10/10 Python
python3+selenium实现126邮箱登陆并发送邮件功能
2019/01/23 Python
pyqt5 从本地选择图片 并显示在label上的实例
2019/06/13 Python
使用django和vue进行数据交互的方法步骤
2019/11/11 Python
详解如何在pyqt中通过OpenCV实现对窗口的透视变换
2020/09/20 Python
澳大利亚旅游网站:Lastminute
2017/08/07 全球购物
解释一下抽象方法和抽象类
2016/08/27 面试题
.net软件工程师应聘上机试题
2015/03/10 面试题
《祁黄羊》教学反思
2014/04/22 职场文书
乳制品整治工作方案
2014/05/29 职场文书
商业计算机应用专业自荐书
2014/06/09 职场文书
英文演讲稿开场白
2014/08/25 职场文书
群众路线对照检查材料思想汇报怎么写
2014/09/18 职场文书
初中中等生评语
2014/12/29 职场文书
葬礼主持词
2015/07/02 职场文书
Netflix《海贼王》真人版剧集多张片场照曝光
2022/04/04 日漫