jQuery: Как Вы предварительно загружаете звук?

У меня есть веб-сайт, который играет звук, когда Вы нажимаете кнопку.

Это - то, как я делаю это

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

Как Вы предварительно загружаете звуковой файл заранее?

Спасибо.

11
задан Aximili 4 May 2010 в 04:46
поделиться

4 ответа

просто подумав, можете ли вы сделать запрос ajax для звукового файла, но не показывать кнопку, пока файл не будет загружен на 100%.

$(document).ready(function() {
    $.ajax({
        url: "soundfile.mp3",
        success: function() {
            $("#play_button").show();
        }
    });
});
15
ответ дан 3 December 2019 в 05:33
поделиться

Не существует такой вещи, как .

Вы можете использовать элемент HTML5 без autoplay , а позже заставить его начать воспроизведение с помощью метода play () .

0
ответ дан 3 December 2019 в 05:33
поделиться

Есть много лучших способов воспроизвести звук с помощью JavaScript. Мой любимый вариант - SoundManager . С его помощью вы можете просто вызвать soundManager.load , чтобы предварительно загрузить звуковой файл.

2
ответ дан 3 December 2019 в 05:33
поделиться
  1. Сделайте к нему запрос AJAX. Если ваш сервер выдает правильные заголовки кеширования (например, Expires ), они будут сохранены в кеше браузера.

  2. Уродливый способ:

soundfile = new Image(); 
soundfile.src = /uploads/sounds/" + soundfile;
0
ответ дан 3 December 2019 в 05:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: