Creé un sitio web donde si el usuario hace clic, reproduce un sonido. Para evitar que el sonido se superponga, tuve que agregar el código:
n.pause();
n.currentTime = 0;
n.play();
Pero eso causa el error:
The play() request was interrupted by a call to pause()
aparece cada vez que se activa el evento de sonido justo después de otro disparador. Los sonidos aún se reproducen bien, pero quiero evitar que este mensaje de error aparezca constantemente. ¿Algunas ideas?
onCanPlay()
. Todas estas respuestas son trucos sucios.
n.play()
entonces n.pause()
. Para eso, este artículo de Web Fundamentals describe la solución. tl; dr:n.play().then(() => { n.pause()})