1

我正在尝试在 HTML5 手机游戏中使用音频元素。我在音效方面遇到了一些问题,所以我在游戏开始时多次克隆音频元素:

for (var i=0; i < 10; i++)
        {
            var container = document.getElementById("audioDiv");
            var clone = document.getElementById('multiaudio0').cloneNode(true);
            clone.setAttribute('id',"multiaudio" + i);
            container.appendChild (clone);
        };

然后,当我需要在“碰撞中”使用它时,我将其称为 NEXT:

document.getElementById('audioDiv').getElementsByTagName("audio")[score%10].play();

调用元素播放时画布上的动画速度很慢的问题!!!!有时它也不起作用!

关于 HTML5 中手机游戏声音的任何想法(无 Flash),或者快速调用元素而不是 document.getElementById???

4

1 回答 1

1

我建议在调用之前预先定义一个包含指向各种音频元素的指针的数组(而不是document.getElementById('audioDiv').getElementsByTagName("audio")多次重复查找另外确保您已经预加载了音频样本,以便它们被缓存并且您没有等待在您第一次需要网络资源时

如果您正在开发基于 HTML5 的游戏,我建议您查看 EaselJS 框架,尤其是 SoundJS 部分... http://www.createjs.com/#!/SoundJS

于 2012-12-25T18:33:09.730 回答