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


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 相关文章推荐
js实现无需数据库的县级以上联动行政区域下拉控件
Aug 14 Javascript
js综合应用实例简单的表格统计
Sep 03 Javascript
JS控件ASP.NET的treeview控件全选或者取消(示例代码)
Dec 16 Javascript
javascript history对象(历史记录)使用方法(实现浏览器前进后退)
Jan 07 Javascript
jquery使用slideDown实现模块缓慢拉出效果的方法
Mar 27 Javascript
javascript实现禁止复制网页内容汇总
Dec 30 Javascript
jQuery EasyUI之DataGrid使用实例详解
Jan 04 Javascript
使用jQuery处理AJAX请求的基础学习教程
May 10 Javascript
三分钟学会用ES7中的Async/Await进行异步编程
Jun 14 Javascript
React中嵌套组件与被嵌套组件的通信过程
Jul 11 Javascript
vue.js实现备忘录demo
Jun 26 Javascript
JS中自定义事件的使用与触发操作实例分析
Nov 01 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函数(简单整理)
2010/04/30 PHP
php中的一些数组排序方法分享
2012/07/20 PHP
php stream_get_meta_data返回值
2013/09/29 PHP
PHP上传文件及图片到七牛的方法
2018/07/25 PHP
php文件操作之文件写入字符串、数组的方法分析
2019/04/15 PHP
WordPress免插件实现面包屑导航的示例代码
2020/08/20 PHP
jQuery数据缓存功能的实现思路及简单模拟
2013/05/27 Javascript
javaScript如何生成xmlhttp
2013/12/16 Javascript
实例详解AngularJS实现无限级联动菜单
2016/01/15 Javascript
详谈Angular 2+ 的表单(一)之模板驱动型表单
2017/04/25 Javascript
Angularjs cookie 操作实例详解
2017/09/27 Javascript
javascript中数组的常用算法深入分析
2019/03/12 Javascript
微信小程序用户授权弹窗 拒绝时引导用户重新授权实现
2019/07/29 Javascript
python连接sql server乱码的解决方法
2013/01/28 Python
Python程序设计入门(1)基本语法简介
2014/06/13 Python
Python实现PS滤镜的万花筒效果示例
2018/01/23 Python
对python sklearn one-hot编码详解
2018/07/10 Python
Sanic框架路由用法实例分析
2018/07/16 Python
python ftp 按目录结构上传下载的实现代码
2018/09/12 Python
详解Python Matplotlib解决绘图X轴值不按数组排序问题
2019/08/05 Python
pygame实现贪吃蛇游戏(上)
2019/10/29 Python
Django 404、500页面全局配置知识点详解
2020/03/10 Python
pycharm开发一个简单界面和通用mvc模板(操作方法图解)
2020/05/27 Python
谈谈对css属性box-sizing的了解
2017/01/04 HTML / CSS
Html5实现移动端、PC端 刮刮卡效果
2016/06/30 HTML / CSS
您的健身减肥和健康饮食专家:vitafy
2017/06/06 全球购物
雅诗兰黛香港官网:Estee Lauder香港
2017/09/26 全球购物
什么是数组名
2012/05/10 面试题
配件采购员岗位职责
2013/12/03 职场文书
给导游的表扬信
2014/01/10 职场文书
幼儿园毕业园长感言
2014/02/24 职场文书
房地产公司见习自我鉴定
2014/04/28 职场文书
基层党支部公开承诺书
2014/05/29 职场文书
西岭雪山导游词
2015/02/06 职场文书
学生会个人总结范文
2015/02/15 职场文书
PostgreSQL存储过程实用脚本(二):创建函数入门
2021/04/05 PostgreSQL