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


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 相关文章推荐
Mootools 1.2教程 选项卡效果(Tabs)
Sep 15 Javascript
为jQuery.Treeview添加右键菜单的实现代码
Oct 22 Javascript
IE与Firefox在JavaScript上的7个不同句法分享
Oct 30 Javascript
5个可以帮你理解JavaScript核心闭包和作用域的小例子
Oct 08 Javascript
Javascript实现可旋转的圆圈实例代码
Aug 04 Javascript
JavaScript脚本判断蜘蛛来源的方法
Sep 22 Javascript
JS简单生成由字母数字组合随机字符串示例
May 25 Javascript
简单明了区分escape、encodeURI和encodeURIComponent
May 26 Javascript
Vue 路由切换时页面内容没有重新加载的解决方法
Sep 01 Javascript
vue实现微信分享功能
Nov 28 Javascript
微信内置浏览器图片查看器的代码实例
Oct 08 Javascript
Vite + React从零开始搭建一个开源组件库
Jun 25 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
当海贼王变成JOJO风
2020/03/02 日漫
编写PHP的安全策略
2006/10/09 PHP
PHP Stream_*系列函数
2010/08/01 PHP
php文件扩展名判断及获取文件扩展名的N种方法
2015/09/12 PHP
解决PHP使用CURL发送GET请求时传递参数的问题
2019/10/11 PHP
php框架知识点的整理和补充
2021/03/01 PHP
jquery操作 iframe的方法
2014/12/03 Javascript
JS动态添加Table的TR,TD实现方法
2015/01/28 Javascript
jQuery实现滚动切换的tab选项卡效果代码
2015/08/26 Javascript
js基础知识(公有方法、私有方法、特权方法)
2015/11/06 Javascript
基于javascript数组实现图片轮播
2016/05/02 Javascript
使用纯JS代码判断字符串中有多少汉字的实现方法(超简单实用)
2016/11/12 Javascript
Angular.Js的自动化测试详解
2016/12/09 Javascript
深入理解 JavaScript 中的 JSON
2017/04/06 Javascript
详解Angular之constructor和ngOnInit差异及适用场景
2017/06/22 Javascript
微信小程序App生命周期详解
2018/01/31 Javascript
Angular(5.2->6.1)升级小结
2018/12/27 Javascript
Vue的H5页面唤起支付宝支付功能
2019/04/18 Javascript
[33:39]DOTA2上海特级锦标赛C组小组赛#2 LGD VS Newbee第二局
2016/02/27 DOTA
Python 元类使用说明
2009/12/18 Python
手写一个python迭代器过程详解
2019/08/27 Python
python 元组的使用方法
2020/06/09 Python
pycharm中使用request和Pytest进行接口测试的方法
2020/07/31 Python
pycharm中如何自定义设置通过“ctrl+滚轮”进行放大和缩小实现方法
2020/09/16 Python
css3实现动画的三种方式
2020/08/24 HTML / CSS
html5 canvas 画图教程案例分析
2012/11/23 HTML / CSS
利用HTML5中Geolocation获取地理位置调用Google Map API在Google Map上定位
2013/01/23 HTML / CSS
聪明的粉丝购买门票的地方:TickPick
2018/03/09 全球购物
捷克玩具商店:Bambule
2019/02/23 全球购物
应付会计岗位职责
2013/12/12 职场文书
平安家庭示范户事迹
2014/06/02 职场文书
艾滋病宣传标语
2014/06/25 职场文书
出租房屋协议书
2014/09/14 职场文书
如何在C++中调用Python
2021/05/21 Python
JS中如何优雅的使用async await详解
2021/10/05 Javascript
VUE使用draggable实现组件拖拽
2022/04/06 Vue.js