一. 前言

在html5的audio标签之中有一个属性是autoplay,他可以实现音频的自动播放,但是在手机端和微信端只生效了一段时间就被禁用掉了。原因是ios和安卓认为加载音频会消耗流量,这种选择应该由用户自己做出,所以音频想要播放必须由用户点击一下播放按钮,但是我们开发额很多酷炫的功能就不能实现了,该怎么办呢?

二. 方案

首先,先设置一个audio标签,设置一个id

在微信的内部有一个WeixinJSBridgeReady私有接口,这个接口可以实现页面加载的一些事件,我们将播放功能放进去会发现音乐就可以自动播放了

但是视觉效果很丑,我们在页面中添加一个播放的图标,定位到屏幕的右上角,并且使用css3给他添加一个旋转动画,让动画循环执行

然后给这个div添加一个点击事件,点击时音乐暂停动画效果暂停,再次点击音乐继续播放,动画效果继续执行

大功告成,效果如下: