小程序实现背景音乐播放和暂停


Posted in Javascript onJune 19, 2020

本文实例为大家分享了小程序背景音乐,供大家参考,具体内容如下

我做这个项目的需求,用到一个背景音乐的播放和暂停;
当用户点击进入音乐界面的时候用户需要手动点击播放对应的音乐,那么播放以后推出音乐界面这个音乐还是处于播放状态,以及音乐的图标的状态也一个是播放。so看看代码吧!
那这里用到了一个新的api 知点,wx.createInnerAudioContext,可以参考小程序官方文档 wx.createInnerAudioContext

具体属性

innerAudioContext.autoplay = true 是否自动播放
innerAudioContext.src=“url” 音乐路径
方法 innerAudioContext.onPlay() 播放
InnerAudioContext.pause() 暂停

首先看一下我的目录结构

小程序实现背景音乐播放和暂停

我的照片放在了images里。主页面是ceshi.wxml ,音乐播放界面是index.wxml

开始上菜,ceshi.wxml

<button bindtap='click'>click me</button>

ceshi.js

click(){
 wx.navigateTo({
 url: '../index/index',
 })
 },

index.wxml

<!-- 背景音乐 -->
<view class='bgmView' catchtap='BGM'>
 <image wx:if='{{bgm}}' class='bgmImg {{bgmImgAni}}' src='/images/kaishi.png'></image>
 <image wx:else class='bgmImg' src='/images/zanting.png'></image>
</view>

index.wxss

/* 背景音乐 */

.bgmView {
 position: fixed;
 top: 20rpx;
 right: 20rpx;
 z-index: 99;
}

.bgmImg {
 width: 70rpx;
 height: 70rpx;
}

.bgmImgAni {
 animation: jumpball 4s infinite linear;
}

@keyframes jumpball {
 100% {
 transform: rotate(360deg);
 }

index.js

// 背景音乐
const innerAudioContext = wx.createInnerAudioContext()
Page({
 /**
 - 页面的初始数据
 */
 data: {
 mp3: 'http://ws.stream.qqmusic.qq.com/M500001VfvsJ21xFqb.mp3?guid=ffffffff82def4af4b12b3cd9337d5e7&uin=346897220&vkey=6292F51E1E384E061FF02C31F716658E5C81F5594D561F2E88B854E81CAAB7806D5E4F103E55D33C16F3FAC506D1AB172DE8600B37E43FAD&fromtag=46',

 // 背景音乐
 bgm: false,
 },

 // 背景音乐
 BGM: function(e) {
 let that = this;
 if (that.data.bgm) {
  that.setData({
  bgm: false,
  })
  innerAudioContext.pause(); /** 暂停音乐 */

 } else {
  that.setData({
  bgm: true,
  bgmImgAni: "bgmImgAni"
  })
  
  // 播放音乐
  innerAudioContext.autoplay = true
  innerAudioContext.loop = true
  innerAudioContext.src = that.data.mp3;
  innerAudioContext.play()
 }
 },
 /**
 - 生命周期函数--页面卸载时
 */
 onUnload() {
 wx.setStorageSync("bgm", this.data.bgm)
 },
 /**
 - 生命周期函数--监听页面加载
 */
 onLoad: function(e) {
 var bgm = wx.getStorageSync("bgm")
 this.setData({
  bgm
 })
 },
})

为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。

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

Javascript 相关文章推荐
javascript Keycode对照表
Oct 24 Javascript
onkeypress字符按键兼容所有浏览器使用介绍
Apr 24 Javascript
JavaScript1.6数组新特性介绍以及JQuery的几个工具方法
Dec 06 Javascript
jQuery表单域属性过滤器用法分析
Feb 10 Javascript
分享9点个人认为比较重要的javascript 编程技巧
Apr 27 Javascript
Javascript中的方法和匿名方法实例详解
Jun 13 Javascript
javascript 判断两个日期之差的示例代码
Sep 05 Javascript
微信小程序 教程之引用
Oct 18 Javascript
浅谈vue的iview列表table render函数设置DOM属性值的方法
Sep 30 Javascript
JS实现的简单表单验证功能完整实例
Oct 14 Javascript
JS 实现获取验证码 倒计时功能
Oct 29 Javascript
jQuery实现轮播图效果
Nov 26 jQuery
小程序选项卡以及swiper套用(跨页面)
Jun 19 #Javascript
如何配置vue.config.js 处理static文件夹下的静态文件
Jun 19 #Javascript
小程序实现多个选项卡切换
Jun 19 #Javascript
微信小程序 button样式设置为图片的方法
Jun 19 #Javascript
微信小程序之导航滑块视图容器功能的实现代码(简单两步)
Jun 19 #Javascript
微信小程序之滑动页面隐藏和显示组件功能的实现代码
Jun 19 #Javascript
深入解读VUE中的异步渲染的实现
Jun 19 #Javascript
You might like
php通过asort()给关联数组按照值排序的方法
2015/03/18 PHP
PHP利用超级全局变量$_GET来接收表单数据的实例
2016/11/05 PHP
PHP获取当前日期及本周一是几月几号的方法
2017/03/28 PHP
Javascript 面向对象 对象(Object)
2010/05/13 Javascript
更优雅的事件触发兼容
2011/10/24 Javascript
使用javascript创建快捷方式的简单实例
2013/08/09 Javascript
jQuery瀑布流插件Wookmark使用实例
2014/04/02 Javascript
Node.js中的process.nextTick使用实例
2015/06/25 Javascript
js实现的光标位置工具函数示例
2016/10/03 Javascript
AngularJS 防止页面闪烁的方法
2017/03/09 Javascript
vue 根据数组中某一项的值进行排序的方法
2018/08/30 Javascript
vue动态删除从数据库倒入列表的某一条方法
2018/09/29 Javascript
Vue表单输入绑定的示例代码
2018/11/01 Javascript
微信小程序实现录音时的麦克风动画效果实例
2019/05/18 Javascript
Vue 实现监听窗口关闭事件,并在窗口关闭前发送请求
2020/09/01 Javascript
python通过BF算法实现关键词匹配的方法
2015/03/13 Python
python生成器generator用法实例分析
2015/06/04 Python
使用Python脚本生成随机IP的简单方法
2015/07/30 Python
python解决js文件utf-8编码乱码问题(推荐)
2018/05/02 Python
Django配置celery(非djcelery)执行异步任务和定时任务
2018/07/16 Python
Python绘制KS曲线的实现方法
2018/08/13 Python
Python Django简单实现session登录注销过程详解
2019/08/06 Python
python3.5 cv2 获取视频特定帧生成jpg图片
2019/08/28 Python
利用python计算时间差(返回天数)
2019/09/07 Python
使用pygame写一个古诗词填空通关游戏
2019/12/03 Python
vue常用指令代码实例总结
2020/03/16 Python
CSS3 选择器 基本选择器介绍
2012/01/21 HTML / CSS
HTML5 绘制图像(上)之:关于canvas元素引领下一代web页面的问题
2013/04/24 HTML / CSS
波兰品牌内衣及泳装网上商店:Astratex.pl
2017/02/03 全球购物
电钳专业个人求职信
2014/01/04 职场文书
会计员岗位职责
2014/03/15 职场文书
市场部经理岗位职责
2015/02/02 职场文书
开展警示教育活动总结
2015/05/09 职场文书
业务员年终工作总结2015
2015/05/28 职场文书
珍惜时间的诗歌赏析
2019/08/23 职场文书
八年级作文之我的母亲
2019/12/10 职场文书