关于在iPhone微信浏览器以及Safari的音频预加载和播放的问题

开发一个H5游戏,需要预加载一些音频文件,并在特定的情况下播放。目前实现的代码是:


function loadSound(sounds, callback) {

    var toLoadLength = sounds.length;

    var loadLength = 0;

    for (var i = toLoadLength; i--;) {

        var src = sounds[i];

        source[src] = new Audio();

        source[src].addEventListener("canplaythrough", function () {

            loadLength++;

            if (toLoadLength === loadLength) {

                callback();

            }

        });

        source[src].src = gameDate.config.soundSrc + src;

    }

}

在电脑上播放没问题,安卓手机没问题,到了iPhone就不行了,一直卡在加载环节,后来调试发现canplaythrough事件没有触发,callback没有运行。

请问有什么解决办法吗?


largeQ
浏览 652回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript