技术饭

解决微信video、audio 无法自动播放的问题

copylian    0 评论    11247 浏览    2019.03.15

IOS Safari 中,无法自动播放音频、视频文件。所以,移动页面我不建议产品设计自动播放的交互,即便在PC上,新版的chrome自动播放也被禁止了(chrome会根据用户行为来确定是否可触发自动播放)。

即便如此,在制作一些移动页面的时候,应甲方爸爸的强烈要求,也难免会有自动播放这样的交互,不过还好传播的渠道大多是在微信中,所以经过搜索和尝试,确认了一套降级方案来使用:IOS微信浏览器中可以正常的使用自动播放,在Safari中依旧不可以~

以下是代码:


// 方法

function weixinPlay(fn) {    if (!isWeixin()) {   

       // 非微信中直接执行,支不支持就交给浏览器本身了
       fn();
   } else {

        if (window.WeixinJSBridge) {
           WeixinJSBridge.invoke("getNetworkType", {}, fn);   // 这句话是在微信中可以自动播放的核心
       } else {

            document.addEventListener("WeixinJSBridgeReady",function () {
               WeixinJSBridge.invoke("getNetworkType", {}, fn);
           });
       }
   }
}

// 调用

weixinPlay(function() {

    document.querySelector('#bgm').play();
})

只袄早~~~
感谢你的支持,我会继续努力!
扫码打赏,感谢您的支持!

文明上网理性发言!

  • 还没有评论,沙发等你来抢