新版微信h5视频自动播放

时间:2021-07-27 11:48:30

微信最近升级了新版本,直播视频不能自动播放,经过了一番探索,发现下列方法可以实现自动播放。

    if (typeof WeixinJSBridge == "undefined") {
        document.addEventListener("WeixinJSBridgeReady", function() {
            setTimeout(function(){
                player.play();//调用h5播放器自动播放的方法,我们使用的是video.js播放器。
            },500);
        }, false);
    }

-------------------------------------------2017-01-04更新------------------------------------------------------------------

代码用了一段时间,发现会有一定概率不能自动播放,究其愿意是因为当时间执行的时候player对象还没有载入完毕,改进如下、

if (typeof WeixinJSBridge == "undefined") {
        var i = 0;
        if (document.addEventListener) {
            document.addEventListener("WeixinJSBridgeReady", function func() {
                if (typeof isAddPlayerOk !== 'undefined' && isAddPlayerOk === true) {
                    i = null;
                    player.play();
                } else {
                    if (i++ < 10) {
                        setTimeout(func, 100);
                    }
                }
            }, false);
        }
    }

以上代码,当 WeixinJSBridgeReady事件触发的时候,播放器js代码(我们用的是video.js)会给我抛出一个参数(自己定义的)便于我判断player对象是否装载完毕,如果没有,我就会延迟100ms再次去调用,会调用十次。