您现在的位置: 365建站网 > 365学习 > 解决ios audio无法自动播放、循环播放的问题

解决ios audio无法自动播放、循环播放的问题

文章来源:365jz.com     点击数:155    更新时间:2018-10-16 11:35   参与评论

// music自动播放

        var music = document.getElementById('bgm');


        var state = 0;

        document.addEventListener('touchstart', function(){

            if(state==0){

                music.play();

                state=1;

            }

        }, false);


        document.addEventListener("WeixinJSBridgeReady", function () {

            music.play();

        }, false);

        //循环播放

        music.onended = function () {

            music.load();

            music.play();

        }


ios中使用audio,日常踩坑


必须!!!点击后即调用xxx.play()这个方法


但是我们音频链接数据如果是网络请求而来的,那我们可以这样做:


1.在无播放链接的情况下先调用一次xxx.play(),然后暂停xxx.pause()


2.请求到数据以后,替换链接


3.判断readyState的值


0 = HAVE_NOTHING - 没有关于音频是否就绪的信息

1 = HAVE_METADATA - 关于音频就绪的元数据

2 = HAVE_CURRENT_DATA - 关于当前播放位置的数据是可用的,但没有足够的数据来播放下一帧/毫秒

3 = HAVE_FUTURE_DATA - 当前及至少下一帧的数据是可用的

4 = HAVE_ENOUGH_DATA - 可用数据足以开始播放

4.如果readyState===4,调用xxx.currentTime = 0 初始化


5.最后调用xxx.play()

如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛


发表评论 (155人查看0条评论)
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码: 点击我更换图片
最新评论
------分隔线----------------------------