<audio class="player" ref="audio" loop autoplay preload>
<source src="xxxxx">
</audio>
试过网上很多种方法,都没触发,例如下面这个
//微信浏览器内部初始化完成后
document.addEventListener(
"WeixinJSBridgeReady",
() => {
this.$refs.audio.load();
},
false
);
后来实现方案:
用jssdk(需要安装插件:weixin-js-sdk),再调用wx.ready就可以了
iosAutoPlayBgm() {
let u = navigator.userAgent;
let isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
if (!isiOS) {
console.log("不是ios不处理");
return;
}
this.$post("/api/wxlogin/getJsConfig")
.then(rsp => {
this.wx.config({
debug: false, // 开启调试模式
appId: rsp.appId, // 必填,公众号的唯一标识
timestamp: rsp.timestamp, // 必填,生成签名的时间戳
nonceStr: rsp.nonceStr, // 必填,生成签名的随机串
signature: rsp.signature // 必填,签名,见附录1
});
})
.catch(error => {
console.log(error);
});
this.wx.ready(() => {
this.$refs.audio.play();
});
}