audio解决不能自动播放问题

问题描述

无法实现打开网页就能自动播放音乐

正常情况下使用autoplay即可实现自动播放,但是现在打开网页该参数无效

原因分析:

根据最新的规范,Chrome系浏览器,没有交互过的网站默认禁止自动播放,所以现在使用autoplay,打开网页无法实现自动播放.

解决方案:

html

<audio src="1.mp3" id="audios" autoplay preload controls></audio>

js部分

var audio = document.getElementById('audios');
function audioAutoPlay(audio){
	play = function(){
		audio.play();
		document.removeEventListener("touchstart",play, false);
	};

	audio.play();
	document.addEventListener("WeixinJSBridgeReady", function () {
		play();
	}, false);

	document.addEventListener('YixinJSBridgeReady', function() {
		play();
	}, false);

	document.addEventListener("touchstart",play, false);
}

//每隔2秒检测是否播放音乐,播放则停止定时器
let t = setInterval(() => {
	if(audio.paused === false){
		console.log('停止定时器');
		clearInterval(t);
	}else{
		console.log('执行定时器');
		audioAutoPlay(audio);
	}
},2000);
posted @ 2022-11-25 21:39  天宁哦  阅读(427)  评论(0编辑  收藏  举报