13

ボタンをクリックすると音が鳴るウェブサイトがあります。

これが私のやり方です

function PlaySound(soundfile) {
    $('#soundContainer').html("<embed src='/uploads/sounds/" + soundfile + "' hidden=true autostart=true loop=false>");
}

サウンドファイルを事前にどのようにプリロードしますか?

ありがとうございました。

4

5 に答える 5

17

頭のてっぺんに考えて、サウンドファイルのajaxリクエストを作成できますが、ファイルが100%読み込まれるまでボタンを表示しないでください。

$(document).ready(function() {
    $.ajax({
        url: "soundfile.mp3",
        success: function() {
            $("#play_button").show();
        }
    });
});
于 2010-05-04T05:54:54.090 に答える
5

次のようにHTML5でこれを行います。

my_sound = $("<audio>", {src:"filename.mp3",preload:"auto"}).appendTo("body");

次にそれを再生するには:

my_sound[0].play();
于 2015-09-02T03:07:27.783 に答える
2

JavaScriptでサウンドを再生するためのより良い方法はたくさんあります。私のお気に入りについては、 SoundManagerをチェックしてください。これを使用すると、単に呼び出しsoundManager.loadてサウンドファイルをプリエンプティブにロードできます。

于 2010-05-04T04:59:17.167 に答える
0
  1. それにAJAXリクエストを行います。サーバーが適切なキャッシュヘッダー(Expiresなど)を発行した場合、それはブラウザのキャッシュに保存されます。

  2. 醜い方法:

soundfile = new Image();
soundfile.src = / uploads / sounds / "+ soundfile;
于 2010-05-04T04:58:33.310 に答える
0

のようなものはありません<embed>

なしでHTML5<audio>要素を使用し、autoplay後でそのplay()メソッドでの再生を開始することができます。

于 2010-05-04T04:58:53.047 に答える