Я пытаюсь воспроизвести звуковой эффект, когда пользователь нажимает кнопку в моем веб-приложении.Воспроизведение нескольких звуковых эффектов одного снимка одновременно в мобильных браузерах?
я впервые попробовал этот метод:
var sound = new Audio("soundeffect.ogg");
function clickHandler(){
sound.play();
}
Однако, если пользователь нажимает на кнопку два раза подряд, звук только играл один раз. Я предполагал, что это потому, что звук не закончил играть, и поэтому он не перемотан.
Тогда я пробовал это решение.
var sound = new Audio("soundeffect.ogg");
function clickHandler(){
sound.currentTime = 0;
sound.play();
}
Однако это приводит к отключению первого звука до следующего воспроизведения.
Затем я попробовал эту версию, которая создает новый звуковой эффект каждый раз, когда нажата кнопка:
function clickHandler(){
var sound = new Audio("soundeffect.ogg");
sound.play();
}
Это отлично работает на моей девелоперской машине, но с помощью Android Chrome на мобильных данных, звуковой эффект кажется каждый раз, когда нажимается кнопка, происходит задержка в несколько секунд до воспроизведения звука.
Я надеялся объявить звуковой эффект в глобальном масштабе, а затем клонирование может помочь сохранить его в кеше, но он, похоже, не помог.
var sound = new Audio("soundeffect.ogg");
function clickHandler(){
var oneShotSound = sound.cloneNode();
oneShotSound.play();
}
Спасибо! очень полезно! – helderk