微信端开发H5页面的时候,audio标签在苹果机上无法进行自动播放

所遇问题

在微信端开发H5的时候,audio标签在苹果机上无法进行自动播放

原因分析

<audio controls="controls" id="music" loop="loop">
    <source src="./assets/sound/music.mp3" type="audio/ogg" /> <source src="./assets/sound/music.ogg" type="audio/ogg" /> </audio>

这是我html上的代码,经过运行发现android机上能够良好的呈现并播放,但是在苹果机上呈现的是一条白杠和一个无法使用的三角形按钮。 
使用Audio标签的属性进行检测

Media = document.getElementById("music");
alert(Media.networkState);// 状态码显示为3,表示Audio没有找到资源路径

更多关于Audio标签的属性和方法,可点击此处

于是尝试使用js去注入一个路径

Media.src = "./assets/sound/music.mp3"; 
Media.play();

发现苹果机的音乐播放问题被解决了

如果问题没有被解决请参考以下这篇文章 
解决ios下的微信页面背景音乐无法自动播放问题

解决办法

html:
<audio controls="controls" id="music" loop="loop" style="display: none"> <source src="./assets/sound/music.mp3" type="audio/ogg" /> <source src="./assets/sound/music.ogg" type="audio/ogg" /> </audio> js: Media = document.getElementById("music"); Media.src = "./assets/sound/music.mp3"; Media.play();

问题总结

个人猜测:苹果手机对静态标签的src支持可能不太友好, 需要js注入路径才能播放(纯属新手的个人猜测,希望有朋友能正确引导我) 
问题扩展:曾经有一段时间是苹果机的音乐能够播放,android机不能播放,至今未找到原因,如果有人知晓关于audio的更多知识,还请不吝赐教

转载于:https://www.cnblogs.com/aim-at-is-the-tao-in/p/6387346.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值