H5自动播放背景音乐(IOS和安卓)

安卓与IOS播放

安卓可以直接使用audio标签进行播放

<audio
	ref="sound"
	:src="bgm.mp3"
	loop />
const audio = document.querySelector('audio')
audio.play()

IOS端需要借助微信自带的事件进行播放

const audio = document.querySelector('audio')
document.addEventListener('WeixinJSBridgeReady', () => {
   
	audio.play()
}, false)

其他app客户端直接同安卓端一样直接播放
浏览器app部分可能不支持自动播放

安卓与IOS兼容

有Loading页,需要在Loading页之后播放背景音乐时,IOS端依旧无法自动播放,因为自动播放音频依托于微信的WeixinJSBridgeReady的事件,WeixinJSBridgeReady通常发生很快,在Loading页结束之前已经发生,此时可以在WeixinJSBridgeReady时播放一段空音频,等待Loading结束,再播放bgm。

var _audio
var _isWeixinJSBridgeReady = false
document.addEventListener('WeixinJSBridgeReady', () => {
   
  _isWeixinJSBridgeReady = true
  _audio = new Audio()
  _audio.style.display = 'none'
  // 播放空音频
  _audio.src = 'empty.mp3'
  _audio.play()
}, false)

const initMusic = () => {
   
	var setInitMuisc = () => {
   
		// 播放背景音乐
		_audio.src = 'bgm.mp3'
		_audio.play()

		document.removeEventListener('click', setInitMuisc)
		document.removeEventListener('touchstart', setInitMuisc)
    }
	document.addEventListener('click', setInitMuisc)
    document.addEventListener('touchstart', setInitMuisc)
    document
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值