小程序?qū)崿F(xiàn)背景音樂播放和暫停
本文實例為大家分享了小程序背景音樂,供大家參考,具體內(nèi)容如下
我做這個項目的需求,用到一個背景音樂的播放和暫停;
當(dāng)用戶點擊進(jìn)入音樂界面的時候用戶需要手動點擊播放對應(yīng)的音樂,那么播放以后推出音樂界面這個音樂還是處于播放狀態(tài),以及音樂的圖標(biāo)的狀態(tài)也一個是播放。so看看代碼吧!
那這里用到了一個新的api 知點,wx.createInnerAudioContext,可以參考小程序官方文檔 wx.createInnerAudioContext
具體屬性
innerAudioContext.autoplay = true 是否自動播放
innerAudioContext.src=“url” 音樂路徑
方法 innerAudioContext.onPlay() 播放
InnerAudioContext.pause() 暫停
首先看一下我的目錄結(jié)構(gòu)

我的照片放在了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({
/**
- 頁面的初始數(shù)據(jù)
*/
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()
}
},
/**
- 生命周期函數(shù)--頁面卸載時
*/
onUnload() {
wx.setStorageSync("bgm", this.data.bgm)
},
/**
- 生命周期函數(shù)--監(jiān)聽頁面加載
*/
onLoad: function(e) {
var bgm = wx.getStorageSync("bgm")
this.setData({
bgm
})
},
})
為大家推薦現(xiàn)在關(guān)注度比較高的微信小程序教程一篇:《微信小程序開發(fā)教程》小編為大家精心整理的,希望喜歡。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

