Chrome的autoplay政策在2018年4月做了更改。
新的行为:浏览器为了提高用户体验,减少数据消耗,现在都在遵循autoplay政策,Chrome的autoplay 政策非常简单
1. muted autoplay始终被允许
2. 音乐的autoplay 只有在下面集中情况下起作用:
1. 有用户行为发生像(click,tap,etc).
2. 对于桌面程序,用户已经提前播放了音频
3. 对于移动端用户将音频网址home screen.
解决方案:
- Open chrome://flags/#autoplay-policy
- Setting No user gesture is required
- Relaunch Chrome
用户行为例子:
$('.audioBox').click(function(){
$('.audio').get(0).paused?(()=>{
$('.musicImg').attr('src','./img/audio.png');
$('.audioBox').addClass('on');
$('.audio').get(0).play()
})()
:(()=>{
$('.musicImg').attr('src','./img/OFF.png');
$('.audioBox').removeClass('on');
$('.audio').get(0).pause();
})();
})