不支持audio的autoplay,部分的IOS微信(本文提供的解决方案)
关于音乐自动播放的问题存在三种:
- 支持audio的autoplay,大部分安卓机子的自带浏览器和微信,大部分的IOS微信(无需特殊解决)
- 不支持audio的autoplay,部分的IOS微信(本文提供的解决方案)
- 不支持audio的autoplay,部分的安卓机子的自带浏览器(比如小米,开始模仿safari)和全部的ios safari(这种只能做用户触屏时就触发播放了)
微信自带提供的事件:微信的WeixinJSBridgeReady事件,少部分的机子微信只要做微信ready后执行播放,就可以用代码实现自动播放功能了!具体代码请看下面:
HTML
<audio src="music.mp3" id="demo" autoplay preload loop="loop"></audio>
JS
function audioAutoPlay(id){
var audio = document.getElementById(id),
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);
}
audioAutoPlay('demo');
网友评论