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(フラッシュなし)のモバイルゲームのサウンドに関するアイデア、または 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 に答える