为什么audio paly() 方法在安卓低版本和苹果低版本无法自动播放

$function {

$.getJSON"http:// ...........?template=1&callback=?",gettemplate
function gettemplatedata { //调用音乐播放 $.Includ["Music"], function { //调用方法 $.Musicbase_data["Music"]; }
} $.extend{ Music:functionmusicSrc{ if$"#Music".length > 0{ return false; }else{ $"body".append<div class="Music" id="Music" play="0"><audio id="Music_play" src=" + musicsrc + " hidden="true" loop="loop" > </audio> </div>; $"Music".on"click" ,function { var _Music_play=$"Music_play"[0]; var _this = $this; if_this.attr"play" != 1{ _this.addClassMusicRotate; _Music_play.play; _this.attr"play" , "0" }else{ _this.removeClass"MusicRotate"; _Music_play.pause; _this.attr"play" , "0"; } }; $"#Music".click; } }
}

}

CSS样式 未提取。

导致的现象 是: 在最新出的 手机上 音乐能够 正常自动播放, 图标也在进入的时候 正常旋转,

(iphone 5s 6 6s 7 7p 三星新版本手机) 以下是不正常的 手机 型号和问题 : 小米 oppo iPhone6p 音乐图标旋转, 但是音乐没有自动播放, 检测 代码 console.log$"#Music_play"[0].currentTime; // 音乐播放状态时间 输出结果为 0 ; 

必须要将 图标 点击 两次 才能成功播放


请 大神 解答 

移动端的部分浏览器出于用户体验和安全性(主要是保护用户流量)是禁止了自动播放和自动加载资源的。
这个部分直接传送门: https://segmentfault.com/a/11…

你应该在页面初始化的时候就初始化一个audio的dom,然后后面的点击等事件直接播放,而不是点击才创建dom,手动抛事件,这样是无效的。

发表评论

电子邮件地址不会被公开。 必填项已用*标注