小程式實現背景音樂播放和暫停
阿新 • • 發佈:2020-06-23
本文例項為大家分享了小程式背景音樂,供大家參考,具體內容如下
我做這個專案的需求,用到一個背景音樂的播放和暫停;
當用戶點選進入音樂介面的時候使用者需要手動點選播放對應的音樂,那麼播放以後推出音樂介面這個音樂還是處於播放狀態,以及音樂的圖示的狀態也一個是播放。so看看程式碼吧!
那這裡用到了一個新的api 知點,wx.createInnerAudioContext,可以參考小程式官方文件 wx.createInnerAudioContext
具體屬性
innerAudioContext.autoplay = true 是否自動播放
innerAudioContext.src=“url” 音樂路徑
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 }) },})
為大家推薦現在關注度比較高的微信小程式教程一篇:《微信小程式開發教程》小編為大家精心整理的,希望喜歡。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。